001/*-
002 * #%L
003 * HAPI FHIR JPA Server
004 * %%
005 * Copyright (C) 2014 - 2025 Smile CDR, Inc.
006 * %%
007 * Licensed under the Apache License, Version 2.0 (the "License");
008 * you may not use this file except in compliance with the License.
009 * You may obtain a copy of the License at
010 *
011 *      http://www.apache.org/licenses/LICENSE-2.0
012 *
013 * Unless required by applicable law or agreed to in writing, software
014 * distributed under the License is distributed on an "AS IS" BASIS,
015 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
016 * See the License for the specific language governing permissions and
017 * limitations under the License.
018 * #L%
019 */
020package ca.uhn.fhir.jpa.provider.merge;
021
022import static ca.uhn.fhir.rest.server.provider.ProviderConstants.OPERATION_MERGE_PARAM_RESULT_PATIENT;
023import static ca.uhn.fhir.rest.server.provider.ProviderConstants.OPERATION_MERGE_PARAM_SOURCE_PATIENT;
024import static ca.uhn.fhir.rest.server.provider.ProviderConstants.OPERATION_MERGE_PARAM_SOURCE_PATIENT_IDENTIFIER;
025import static ca.uhn.fhir.rest.server.provider.ProviderConstants.OPERATION_MERGE_PARAM_TARGET_PATIENT;
026import static ca.uhn.fhir.rest.server.provider.ProviderConstants.OPERATION_MERGE_PARAM_TARGET_PATIENT_IDENTIFIER;
027
028/**
029 * See <a href="https://build.fhir.org/patient-operation-merge.html">Patient $merge spec</a>
030 */
031public class PatientMergeOperationInputParameters extends BaseMergeOperationInputParameters {
032        public PatientMergeOperationInputParameters(int theResourceLimit) {
033                super(theResourceLimit);
034        }
035
036        @Override
037        public String getSourceResourceParameterName() {
038                return OPERATION_MERGE_PARAM_SOURCE_PATIENT;
039        }
040
041        @Override
042        public String getTargetResourceParameterName() {
043                return OPERATION_MERGE_PARAM_TARGET_PATIENT;
044        }
045
046        @Override
047        public String getSourceIdentifiersParameterName() {
048                return OPERATION_MERGE_PARAM_SOURCE_PATIENT_IDENTIFIER;
049        }
050
051        @Override
052        public String getTargetIdentifiersParameterName() {
053                return OPERATION_MERGE_PARAM_TARGET_PATIENT_IDENTIFIER;
054        }
055
056        @Override
057        public String getResultResourceParameterName() {
058                return OPERATION_MERGE_PARAM_RESULT_PATIENT;
059        }
060}