001/*- 002 * #%L 003 * Smile CDR - CDR 004 * %% 005 * Copyright (C) 2016 - 2026 Smile CDR, Inc. 006 * %% 007 * All rights reserved. 008 * #L% 009 */ 010package ca.cdr.api.fhir.interceptor; 011 012import jakarta.annotation.Nonnull; 013import jakarta.annotation.Nullable; 014import org.hl7.fhir.r4.model.Consent; 015import org.hl7.fhir.r4.model.Coverage; 016import org.hl7.fhir.r4.model.Patient; 017 018public class MemberMatchConsentRequest extends MemberMatchRequest 019 implements IMemberMatchConsentRequest<Patient, Coverage, Consent> { 020 private final Consent myConsent; 021 private final Patient myMatchedPatient; 022 023 public MemberMatchConsentRequest( 024 @Nonnull Patient thePatient, @Nonnull Coverage theCoverage, @Nonnull Consent theConsent) { 025 this(thePatient, theCoverage, theConsent, null); 026 } 027 028 public MemberMatchConsentRequest( 029 @Nonnull Patient thePatient, 030 @Nonnull Coverage theCoverage, 031 @Nonnull Consent theConsent, 032 @Nullable Patient theMatchedPatient) { 033 super(thePatient, theCoverage); 034 myConsent = theConsent; 035 myMatchedPatient = theMatchedPatient; 036 } 037 038 @Override 039 @Nonnull 040 public Consent getConsent() { 041 return myConsent; 042 } 043 044 @Override 045 @Nullable 046 public Patient getMatchedPatient() { 047 return myMatchedPatient; 048 } 049}