blob: 7c05728acd1abae9b3917646752fdb22e389d9c1 [file] [log] [blame]
/**
*/
package org.hl7.fhir.impl;
import java.util.Collection;
import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.common.notify.NotificationChain;
import org.eclipse.emf.common.util.EList;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.InternalEObject;
import org.eclipse.emf.ecore.impl.ENotificationImpl;
import org.eclipse.emf.ecore.util.EObjectContainmentEList;
import org.eclipse.emf.ecore.util.InternalEList;
import org.hl7.fhir.CodeableConcept;
import org.hl7.fhir.DateTime;
import org.hl7.fhir.FhirPackage;
import org.hl7.fhir.Identifier;
import org.hl7.fhir.MedicationDispense;
import org.hl7.fhir.MedicationDispenseDosageInstruction;
import org.hl7.fhir.MedicationDispenseStatus;
import org.hl7.fhir.MedicationDispenseSubstitution;
import org.hl7.fhir.Reference;
import org.hl7.fhir.SimpleQuantity;
/**
* <!-- begin-user-doc -->
* An implementation of the model object '<em><b>Medication Dispense</b></em>'.
* <!-- end-user-doc -->
* <p>
* The following features are implemented:
* </p>
* <ul>
* <li>{@link org.hl7.fhir.impl.MedicationDispenseImpl#getIdentifier <em>Identifier</em>}</li>
* <li>{@link org.hl7.fhir.impl.MedicationDispenseImpl#getStatus <em>Status</em>}</li>
* <li>{@link org.hl7.fhir.impl.MedicationDispenseImpl#getPatient <em>Patient</em>}</li>
* <li>{@link org.hl7.fhir.impl.MedicationDispenseImpl#getDispenser <em>Dispenser</em>}</li>
* <li>{@link org.hl7.fhir.impl.MedicationDispenseImpl#getAuthorizingPrescription <em>Authorizing Prescription</em>}</li>
* <li>{@link org.hl7.fhir.impl.MedicationDispenseImpl#getType <em>Type</em>}</li>
* <li>{@link org.hl7.fhir.impl.MedicationDispenseImpl#getQuantity <em>Quantity</em>}</li>
* <li>{@link org.hl7.fhir.impl.MedicationDispenseImpl#getDaysSupply <em>Days Supply</em>}</li>
* <li>{@link org.hl7.fhir.impl.MedicationDispenseImpl#getMedicationCodeableConcept <em>Medication Codeable Concept</em>}</li>
* <li>{@link org.hl7.fhir.impl.MedicationDispenseImpl#getMedicationReference <em>Medication Reference</em>}</li>
* <li>{@link org.hl7.fhir.impl.MedicationDispenseImpl#getWhenPrepared <em>When Prepared</em>}</li>
* <li>{@link org.hl7.fhir.impl.MedicationDispenseImpl#getWhenHandedOver <em>When Handed Over</em>}</li>
* <li>{@link org.hl7.fhir.impl.MedicationDispenseImpl#getDestination <em>Destination</em>}</li>
* <li>{@link org.hl7.fhir.impl.MedicationDispenseImpl#getReceiver <em>Receiver</em>}</li>
* <li>{@link org.hl7.fhir.impl.MedicationDispenseImpl#getNote <em>Note</em>}</li>
* <li>{@link org.hl7.fhir.impl.MedicationDispenseImpl#getDosageInstruction <em>Dosage Instruction</em>}</li>
* <li>{@link org.hl7.fhir.impl.MedicationDispenseImpl#getSubstitution <em>Substitution</em>}</li>
* </ul>
*
* @generated
*/
public class MedicationDispenseImpl extends DomainResourceImpl implements MedicationDispense {
/**
* The cached value of the '{@link #getIdentifier() <em>Identifier</em>}' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getIdentifier()
* @generated
* @ordered
*/
protected Identifier identifier;
/**
* The cached value of the '{@link #getStatus() <em>Status</em>}' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getStatus()
* @generated
* @ordered
*/
protected MedicationDispenseStatus status;
/**
* The cached value of the '{@link #getPatient() <em>Patient</em>}' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getPatient()
* @generated
* @ordered
*/
protected Reference patient;
/**
* The cached value of the '{@link #getDispenser() <em>Dispenser</em>}' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getDispenser()
* @generated
* @ordered
*/
protected Reference dispenser;
/**
* The cached value of the '{@link #getAuthorizingPrescription() <em>Authorizing Prescription</em>}' containment reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getAuthorizingPrescription()
* @generated
* @ordered
*/
protected EList<Reference> authorizingPrescription;
/**
* The cached value of the '{@link #getType() <em>Type</em>}' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getType()
* @generated
* @ordered
*/
protected CodeableConcept type;
/**
* The cached value of the '{@link #getQuantity() <em>Quantity</em>}' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getQuantity()
* @generated
* @ordered
*/
protected SimpleQuantity quantity;
/**
* The cached value of the '{@link #getDaysSupply() <em>Days Supply</em>}' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getDaysSupply()
* @generated
* @ordered
*/
protected SimpleQuantity daysSupply;
/**
* The cached value of the '{@link #getMedicationCodeableConcept() <em>Medication Codeable Concept</em>}' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getMedicationCodeableConcept()
* @generated
* @ordered
*/
protected CodeableConcept medicationCodeableConcept;
/**
* The cached value of the '{@link #getMedicationReference() <em>Medication Reference</em>}' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getMedicationReference()
* @generated
* @ordered
*/
protected Reference medicationReference;
/**
* The cached value of the '{@link #getWhenPrepared() <em>When Prepared</em>}' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getWhenPrepared()
* @generated
* @ordered
*/
protected DateTime whenPrepared;
/**
* The cached value of the '{@link #getWhenHandedOver() <em>When Handed Over</em>}' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getWhenHandedOver()
* @generated
* @ordered
*/
protected DateTime whenHandedOver;
/**
* The cached value of the '{@link #getDestination() <em>Destination</em>}' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getDestination()
* @generated
* @ordered
*/
protected Reference destination;
/**
* The cached value of the '{@link #getReceiver() <em>Receiver</em>}' containment reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getReceiver()
* @generated
* @ordered
*/
protected EList<Reference> receiver;
/**
* The cached value of the '{@link #getNote() <em>Note</em>}' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getNote()
* @generated
* @ordered
*/
protected org.hl7.fhir.String note;
/**
* The cached value of the '{@link #getDosageInstruction() <em>Dosage Instruction</em>}' containment reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getDosageInstruction()
* @generated
* @ordered
*/
protected EList<MedicationDispenseDosageInstruction> dosageInstruction;
/**
* The cached value of the '{@link #getSubstitution() <em>Substitution</em>}' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getSubstitution()
* @generated
* @ordered
*/
protected MedicationDispenseSubstitution substitution;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected MedicationDispenseImpl() {
super();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
protected EClass eStaticClass() {
return FhirPackage.eINSTANCE.getMedicationDispense();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public Identifier getIdentifier() {
return identifier;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public NotificationChain basicSetIdentifier(Identifier newIdentifier, NotificationChain msgs) {
Identifier oldIdentifier = identifier;
identifier = newIdentifier;
if (eNotificationRequired()) {
ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, FhirPackage.MEDICATION_DISPENSE__IDENTIFIER, oldIdentifier, newIdentifier);
if (msgs == null) msgs = notification; else msgs.add(notification);
}
return msgs;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void setIdentifier(Identifier newIdentifier) {
if (newIdentifier != identifier) {
NotificationChain msgs = null;
if (identifier != null)
msgs = ((InternalEObject)identifier).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - FhirPackage.MEDICATION_DISPENSE__IDENTIFIER, null, msgs);
if (newIdentifier != null)
msgs = ((InternalEObject)newIdentifier).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - FhirPackage.MEDICATION_DISPENSE__IDENTIFIER, null, msgs);
msgs = basicSetIdentifier(newIdentifier, msgs);
if (msgs != null) msgs.dispatch();
}
else if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, FhirPackage.MEDICATION_DISPENSE__IDENTIFIER, newIdentifier, newIdentifier));
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public MedicationDispenseStatus getStatus() {
return status;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public NotificationChain basicSetStatus(MedicationDispenseStatus newStatus, NotificationChain msgs) {
MedicationDispenseStatus oldStatus = status;
status = newStatus;
if (eNotificationRequired()) {
ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, FhirPackage.MEDICATION_DISPENSE__STATUS, oldStatus, newStatus);
if (msgs == null) msgs = notification; else msgs.add(notification);
}
return msgs;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void setStatus(MedicationDispenseStatus newStatus) {
if (newStatus != status) {
NotificationChain msgs = null;
if (status != null)
msgs = ((InternalEObject)status).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - FhirPackage.MEDICATION_DISPENSE__STATUS, null, msgs);
if (newStatus != null)
msgs = ((InternalEObject)newStatus).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - FhirPackage.MEDICATION_DISPENSE__STATUS, null, msgs);
msgs = basicSetStatus(newStatus, msgs);
if (msgs != null) msgs.dispatch();
}
else if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, FhirPackage.MEDICATION_DISPENSE__STATUS, newStatus, newStatus));
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public Reference getPatient() {
return patient;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public NotificationChain basicSetPatient(Reference newPatient, NotificationChain msgs) {
Reference oldPatient = patient;
patient = newPatient;
if (eNotificationRequired()) {
ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, FhirPackage.MEDICATION_DISPENSE__PATIENT, oldPatient, newPatient);
if (msgs == null) msgs = notification; else msgs.add(notification);
}
return msgs;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void setPatient(Reference newPatient) {
if (newPatient != patient) {
NotificationChain msgs = null;
if (patient != null)
msgs = ((InternalEObject)patient).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - FhirPackage.MEDICATION_DISPENSE__PATIENT, null, msgs);
if (newPatient != null)
msgs = ((InternalEObject)newPatient).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - FhirPackage.MEDICATION_DISPENSE__PATIENT, null, msgs);
msgs = basicSetPatient(newPatient, msgs);
if (msgs != null) msgs.dispatch();
}
else if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, FhirPackage.MEDICATION_DISPENSE__PATIENT, newPatient, newPatient));
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public Reference getDispenser() {
return dispenser;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public NotificationChain basicSetDispenser(Reference newDispenser, NotificationChain msgs) {
Reference oldDispenser = dispenser;
dispenser = newDispenser;
if (eNotificationRequired()) {
ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, FhirPackage.MEDICATION_DISPENSE__DISPENSER, oldDispenser, newDispenser);
if (msgs == null) msgs = notification; else msgs.add(notification);
}
return msgs;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void setDispenser(Reference newDispenser) {
if (newDispenser != dispenser) {
NotificationChain msgs = null;
if (dispenser != null)
msgs = ((InternalEObject)dispenser).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - FhirPackage.MEDICATION_DISPENSE__DISPENSER, null, msgs);
if (newDispenser != null)
msgs = ((InternalEObject)newDispenser).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - FhirPackage.MEDICATION_DISPENSE__DISPENSER, null, msgs);
msgs = basicSetDispenser(newDispenser, msgs);
if (msgs != null) msgs.dispatch();
}
else if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, FhirPackage.MEDICATION_DISPENSE__DISPENSER, newDispenser, newDispenser));
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EList<Reference> getAuthorizingPrescription() {
if (authorizingPrescription == null) {
authorizingPrescription = new EObjectContainmentEList<Reference>(Reference.class, this, FhirPackage.MEDICATION_DISPENSE__AUTHORIZING_PRESCRIPTION);
}
return authorizingPrescription;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public CodeableConcept getType() {
return type;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public NotificationChain basicSetType(CodeableConcept newType, NotificationChain msgs) {
CodeableConcept oldType = type;
type = newType;
if (eNotificationRequired()) {
ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, FhirPackage.MEDICATION_DISPENSE__TYPE, oldType, newType);
if (msgs == null) msgs = notification; else msgs.add(notification);
}
return msgs;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void setType(CodeableConcept newType) {
if (newType != type) {
NotificationChain msgs = null;
if (type != null)
msgs = ((InternalEObject)type).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - FhirPackage.MEDICATION_DISPENSE__TYPE, null, msgs);
if (newType != null)
msgs = ((InternalEObject)newType).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - FhirPackage.MEDICATION_DISPENSE__TYPE, null, msgs);
msgs = basicSetType(newType, msgs);
if (msgs != null) msgs.dispatch();
}
else if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, FhirPackage.MEDICATION_DISPENSE__TYPE, newType, newType));
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public SimpleQuantity getQuantity() {
return quantity;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public NotificationChain basicSetQuantity(SimpleQuantity newQuantity, NotificationChain msgs) {
SimpleQuantity oldQuantity = quantity;
quantity = newQuantity;
if (eNotificationRequired()) {
ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, FhirPackage.MEDICATION_DISPENSE__QUANTITY, oldQuantity, newQuantity);
if (msgs == null) msgs = notification; else msgs.add(notification);
}
return msgs;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void setQuantity(SimpleQuantity newQuantity) {
if (newQuantity != quantity) {
NotificationChain msgs = null;
if (quantity != null)
msgs = ((InternalEObject)quantity).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - FhirPackage.MEDICATION_DISPENSE__QUANTITY, null, msgs);
if (newQuantity != null)
msgs = ((InternalEObject)newQuantity).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - FhirPackage.MEDICATION_DISPENSE__QUANTITY, null, msgs);
msgs = basicSetQuantity(newQuantity, msgs);
if (msgs != null) msgs.dispatch();
}
else if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, FhirPackage.MEDICATION_DISPENSE__QUANTITY, newQuantity, newQuantity));
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public SimpleQuantity getDaysSupply() {
return daysSupply;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public NotificationChain basicSetDaysSupply(SimpleQuantity newDaysSupply, NotificationChain msgs) {
SimpleQuantity oldDaysSupply = daysSupply;
daysSupply = newDaysSupply;
if (eNotificationRequired()) {
ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, FhirPackage.MEDICATION_DISPENSE__DAYS_SUPPLY, oldDaysSupply, newDaysSupply);
if (msgs == null) msgs = notification; else msgs.add(notification);
}
return msgs;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void setDaysSupply(SimpleQuantity newDaysSupply) {
if (newDaysSupply != daysSupply) {
NotificationChain msgs = null;
if (daysSupply != null)
msgs = ((InternalEObject)daysSupply).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - FhirPackage.MEDICATION_DISPENSE__DAYS_SUPPLY, null, msgs);
if (newDaysSupply != null)
msgs = ((InternalEObject)newDaysSupply).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - FhirPackage.MEDICATION_DISPENSE__DAYS_SUPPLY, null, msgs);
msgs = basicSetDaysSupply(newDaysSupply, msgs);
if (msgs != null) msgs.dispatch();
}
else if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, FhirPackage.MEDICATION_DISPENSE__DAYS_SUPPLY, newDaysSupply, newDaysSupply));
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public CodeableConcept getMedicationCodeableConcept() {
return medicationCodeableConcept;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public NotificationChain basicSetMedicationCodeableConcept(CodeableConcept newMedicationCodeableConcept, NotificationChain msgs) {
CodeableConcept oldMedicationCodeableConcept = medicationCodeableConcept;
medicationCodeableConcept = newMedicationCodeableConcept;
if (eNotificationRequired()) {
ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, FhirPackage.MEDICATION_DISPENSE__MEDICATION_CODEABLE_CONCEPT, oldMedicationCodeableConcept, newMedicationCodeableConcept);
if (msgs == null) msgs = notification; else msgs.add(notification);
}
return msgs;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void setMedicationCodeableConcept(CodeableConcept newMedicationCodeableConcept) {
if (newMedicationCodeableConcept != medicationCodeableConcept) {
NotificationChain msgs = null;
if (medicationCodeableConcept != null)
msgs = ((InternalEObject)medicationCodeableConcept).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - FhirPackage.MEDICATION_DISPENSE__MEDICATION_CODEABLE_CONCEPT, null, msgs);
if (newMedicationCodeableConcept != null)
msgs = ((InternalEObject)newMedicationCodeableConcept).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - FhirPackage.MEDICATION_DISPENSE__MEDICATION_CODEABLE_CONCEPT, null, msgs);
msgs = basicSetMedicationCodeableConcept(newMedicationCodeableConcept, msgs);
if (msgs != null) msgs.dispatch();
}
else if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, FhirPackage.MEDICATION_DISPENSE__MEDICATION_CODEABLE_CONCEPT, newMedicationCodeableConcept, newMedicationCodeableConcept));
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public Reference getMedicationReference() {
return medicationReference;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public NotificationChain basicSetMedicationReference(Reference newMedicationReference, NotificationChain msgs) {
Reference oldMedicationReference = medicationReference;
medicationReference = newMedicationReference;
if (eNotificationRequired()) {
ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, FhirPackage.MEDICATION_DISPENSE__MEDICATION_REFERENCE, oldMedicationReference, newMedicationReference);
if (msgs == null) msgs = notification; else msgs.add(notification);
}
return msgs;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void setMedicationReference(Reference newMedicationReference) {
if (newMedicationReference != medicationReference) {
NotificationChain msgs = null;
if (medicationReference != null)
msgs = ((InternalEObject)medicationReference).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - FhirPackage.MEDICATION_DISPENSE__MEDICATION_REFERENCE, null, msgs);
if (newMedicationReference != null)
msgs = ((InternalEObject)newMedicationReference).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - FhirPackage.MEDICATION_DISPENSE__MEDICATION_REFERENCE, null, msgs);
msgs = basicSetMedicationReference(newMedicationReference, msgs);
if (msgs != null) msgs.dispatch();
}
else if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, FhirPackage.MEDICATION_DISPENSE__MEDICATION_REFERENCE, newMedicationReference, newMedicationReference));
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public DateTime getWhenPrepared() {
return whenPrepared;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public NotificationChain basicSetWhenPrepared(DateTime newWhenPrepared, NotificationChain msgs) {
DateTime oldWhenPrepared = whenPrepared;
whenPrepared = newWhenPrepared;
if (eNotificationRequired()) {
ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, FhirPackage.MEDICATION_DISPENSE__WHEN_PREPARED, oldWhenPrepared, newWhenPrepared);
if (msgs == null) msgs = notification; else msgs.add(notification);
}
return msgs;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void setWhenPrepared(DateTime newWhenPrepared) {
if (newWhenPrepared != whenPrepared) {
NotificationChain msgs = null;
if (whenPrepared != null)
msgs = ((InternalEObject)whenPrepared).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - FhirPackage.MEDICATION_DISPENSE__WHEN_PREPARED, null, msgs);
if (newWhenPrepared != null)
msgs = ((InternalEObject)newWhenPrepared).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - FhirPackage.MEDICATION_DISPENSE__WHEN_PREPARED, null, msgs);
msgs = basicSetWhenPrepared(newWhenPrepared, msgs);
if (msgs != null) msgs.dispatch();
}
else if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, FhirPackage.MEDICATION_DISPENSE__WHEN_PREPARED, newWhenPrepared, newWhenPrepared));
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public DateTime getWhenHandedOver() {
return whenHandedOver;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public NotificationChain basicSetWhenHandedOver(DateTime newWhenHandedOver, NotificationChain msgs) {
DateTime oldWhenHandedOver = whenHandedOver;
whenHandedOver = newWhenHandedOver;
if (eNotificationRequired()) {
ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, FhirPackage.MEDICATION_DISPENSE__WHEN_HANDED_OVER, oldWhenHandedOver, newWhenHandedOver);
if (msgs == null) msgs = notification; else msgs.add(notification);
}
return msgs;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void setWhenHandedOver(DateTime newWhenHandedOver) {
if (newWhenHandedOver != whenHandedOver) {
NotificationChain msgs = null;
if (whenHandedOver != null)
msgs = ((InternalEObject)whenHandedOver).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - FhirPackage.MEDICATION_DISPENSE__WHEN_HANDED_OVER, null, msgs);
if (newWhenHandedOver != null)
msgs = ((InternalEObject)newWhenHandedOver).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - FhirPackage.MEDICATION_DISPENSE__WHEN_HANDED_OVER, null, msgs);
msgs = basicSetWhenHandedOver(newWhenHandedOver, msgs);
if (msgs != null) msgs.dispatch();
}
else if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, FhirPackage.MEDICATION_DISPENSE__WHEN_HANDED_OVER, newWhenHandedOver, newWhenHandedOver));
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public Reference getDestination() {
return destination;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public NotificationChain basicSetDestination(Reference newDestination, NotificationChain msgs) {
Reference oldDestination = destination;
destination = newDestination;
if (eNotificationRequired()) {
ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, FhirPackage.MEDICATION_DISPENSE__DESTINATION, oldDestination, newDestination);
if (msgs == null) msgs = notification; else msgs.add(notification);
}
return msgs;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void setDestination(Reference newDestination) {
if (newDestination != destination) {
NotificationChain msgs = null;
if (destination != null)
msgs = ((InternalEObject)destination).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - FhirPackage.MEDICATION_DISPENSE__DESTINATION, null, msgs);
if (newDestination != null)
msgs = ((InternalEObject)newDestination).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - FhirPackage.MEDICATION_DISPENSE__DESTINATION, null, msgs);
msgs = basicSetDestination(newDestination, msgs);
if (msgs != null) msgs.dispatch();
}
else if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, FhirPackage.MEDICATION_DISPENSE__DESTINATION, newDestination, newDestination));
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EList<Reference> getReceiver() {
if (receiver == null) {
receiver = new EObjectContainmentEList<Reference>(Reference.class, this, FhirPackage.MEDICATION_DISPENSE__RECEIVER);
}
return receiver;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public org.hl7.fhir.String getNote() {
return note;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public NotificationChain basicSetNote(org.hl7.fhir.String newNote, NotificationChain msgs) {
org.hl7.fhir.String oldNote = note;
note = newNote;
if (eNotificationRequired()) {
ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, FhirPackage.MEDICATION_DISPENSE__NOTE, oldNote, newNote);
if (msgs == null) msgs = notification; else msgs.add(notification);
}
return msgs;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void setNote(org.hl7.fhir.String newNote) {
if (newNote != note) {
NotificationChain msgs = null;
if (note != null)
msgs = ((InternalEObject)note).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - FhirPackage.MEDICATION_DISPENSE__NOTE, null, msgs);
if (newNote != null)
msgs = ((InternalEObject)newNote).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - FhirPackage.MEDICATION_DISPENSE__NOTE, null, msgs);
msgs = basicSetNote(newNote, msgs);
if (msgs != null) msgs.dispatch();
}
else if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, FhirPackage.MEDICATION_DISPENSE__NOTE, newNote, newNote));
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EList<MedicationDispenseDosageInstruction> getDosageInstruction() {
if (dosageInstruction == null) {
dosageInstruction = new EObjectContainmentEList<MedicationDispenseDosageInstruction>(MedicationDispenseDosageInstruction.class, this, FhirPackage.MEDICATION_DISPENSE__DOSAGE_INSTRUCTION);
}
return dosageInstruction;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public MedicationDispenseSubstitution getSubstitution() {
return substitution;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public NotificationChain basicSetSubstitution(MedicationDispenseSubstitution newSubstitution, NotificationChain msgs) {
MedicationDispenseSubstitution oldSubstitution = substitution;
substitution = newSubstitution;
if (eNotificationRequired()) {
ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, FhirPackage.MEDICATION_DISPENSE__SUBSTITUTION, oldSubstitution, newSubstitution);
if (msgs == null) msgs = notification; else msgs.add(notification);
}
return msgs;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void setSubstitution(MedicationDispenseSubstitution newSubstitution) {
if (newSubstitution != substitution) {
NotificationChain msgs = null;
if (substitution != null)
msgs = ((InternalEObject)substitution).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - FhirPackage.MEDICATION_DISPENSE__SUBSTITUTION, null, msgs);
if (newSubstitution != null)
msgs = ((InternalEObject)newSubstitution).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - FhirPackage.MEDICATION_DISPENSE__SUBSTITUTION, null, msgs);
msgs = basicSetSubstitution(newSubstitution, msgs);
if (msgs != null) msgs.dispatch();
}
else if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, FhirPackage.MEDICATION_DISPENSE__SUBSTITUTION, newSubstitution, newSubstitution));
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
switch (featureID) {
case FhirPackage.MEDICATION_DISPENSE__IDENTIFIER:
return basicSetIdentifier(null, msgs);
case FhirPackage.MEDICATION_DISPENSE__STATUS:
return basicSetStatus(null, msgs);
case FhirPackage.MEDICATION_DISPENSE__PATIENT:
return basicSetPatient(null, msgs);
case FhirPackage.MEDICATION_DISPENSE__DISPENSER:
return basicSetDispenser(null, msgs);
case FhirPackage.MEDICATION_DISPENSE__AUTHORIZING_PRESCRIPTION:
return ((InternalEList<?>)getAuthorizingPrescription()).basicRemove(otherEnd, msgs);
case FhirPackage.MEDICATION_DISPENSE__TYPE:
return basicSetType(null, msgs);
case FhirPackage.MEDICATION_DISPENSE__QUANTITY:
return basicSetQuantity(null, msgs);
case FhirPackage.MEDICATION_DISPENSE__DAYS_SUPPLY:
return basicSetDaysSupply(null, msgs);
case FhirPackage.MEDICATION_DISPENSE__MEDICATION_CODEABLE_CONCEPT:
return basicSetMedicationCodeableConcept(null, msgs);
case FhirPackage.MEDICATION_DISPENSE__MEDICATION_REFERENCE:
return basicSetMedicationReference(null, msgs);
case FhirPackage.MEDICATION_DISPENSE__WHEN_PREPARED:
return basicSetWhenPrepared(null, msgs);
case FhirPackage.MEDICATION_DISPENSE__WHEN_HANDED_OVER:
return basicSetWhenHandedOver(null, msgs);
case FhirPackage.MEDICATION_DISPENSE__DESTINATION:
return basicSetDestination(null, msgs);
case FhirPackage.MEDICATION_DISPENSE__RECEIVER:
return ((InternalEList<?>)getReceiver()).basicRemove(otherEnd, msgs);
case FhirPackage.MEDICATION_DISPENSE__NOTE:
return basicSetNote(null, msgs);
case FhirPackage.MEDICATION_DISPENSE__DOSAGE_INSTRUCTION:
return ((InternalEList<?>)getDosageInstruction()).basicRemove(otherEnd, msgs);
case FhirPackage.MEDICATION_DISPENSE__SUBSTITUTION:
return basicSetSubstitution(null, msgs);
}
return super.eInverseRemove(otherEnd, featureID, msgs);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public Object eGet(int featureID, boolean resolve, boolean coreType) {
switch (featureID) {
case FhirPackage.MEDICATION_DISPENSE__IDENTIFIER:
return getIdentifier();
case FhirPackage.MEDICATION_DISPENSE__STATUS:
return getStatus();
case FhirPackage.MEDICATION_DISPENSE__PATIENT:
return getPatient();
case FhirPackage.MEDICATION_DISPENSE__DISPENSER:
return getDispenser();
case FhirPackage.MEDICATION_DISPENSE__AUTHORIZING_PRESCRIPTION:
return getAuthorizingPrescription();
case FhirPackage.MEDICATION_DISPENSE__TYPE:
return getType();
case FhirPackage.MEDICATION_DISPENSE__QUANTITY:
return getQuantity();
case FhirPackage.MEDICATION_DISPENSE__DAYS_SUPPLY:
return getDaysSupply();
case FhirPackage.MEDICATION_DISPENSE__MEDICATION_CODEABLE_CONCEPT:
return getMedicationCodeableConcept();
case FhirPackage.MEDICATION_DISPENSE__MEDICATION_REFERENCE:
return getMedicationReference();
case FhirPackage.MEDICATION_DISPENSE__WHEN_PREPARED:
return getWhenPrepared();
case FhirPackage.MEDICATION_DISPENSE__WHEN_HANDED_OVER:
return getWhenHandedOver();
case FhirPackage.MEDICATION_DISPENSE__DESTINATION:
return getDestination();
case FhirPackage.MEDICATION_DISPENSE__RECEIVER:
return getReceiver();
case FhirPackage.MEDICATION_DISPENSE__NOTE:
return getNote();
case FhirPackage.MEDICATION_DISPENSE__DOSAGE_INSTRUCTION:
return getDosageInstruction();
case FhirPackage.MEDICATION_DISPENSE__SUBSTITUTION:
return getSubstitution();
}
return super.eGet(featureID, resolve, coreType);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@SuppressWarnings("unchecked")
@Override
public void eSet(int featureID, Object newValue) {
switch (featureID) {
case FhirPackage.MEDICATION_DISPENSE__IDENTIFIER:
setIdentifier((Identifier)newValue);
return;
case FhirPackage.MEDICATION_DISPENSE__STATUS:
setStatus((MedicationDispenseStatus)newValue);
return;
case FhirPackage.MEDICATION_DISPENSE__PATIENT:
setPatient((Reference)newValue);
return;
case FhirPackage.MEDICATION_DISPENSE__DISPENSER:
setDispenser((Reference)newValue);
return;
case FhirPackage.MEDICATION_DISPENSE__AUTHORIZING_PRESCRIPTION:
getAuthorizingPrescription().clear();
getAuthorizingPrescription().addAll((Collection<? extends Reference>)newValue);
return;
case FhirPackage.MEDICATION_DISPENSE__TYPE:
setType((CodeableConcept)newValue);
return;
case FhirPackage.MEDICATION_DISPENSE__QUANTITY:
setQuantity((SimpleQuantity)newValue);
return;
case FhirPackage.MEDICATION_DISPENSE__DAYS_SUPPLY:
setDaysSupply((SimpleQuantity)newValue);
return;
case FhirPackage.MEDICATION_DISPENSE__MEDICATION_CODEABLE_CONCEPT:
setMedicationCodeableConcept((CodeableConcept)newValue);
return;
case FhirPackage.MEDICATION_DISPENSE__MEDICATION_REFERENCE:
setMedicationReference((Reference)newValue);
return;
case FhirPackage.MEDICATION_DISPENSE__WHEN_PREPARED:
setWhenPrepared((DateTime)newValue);
return;
case FhirPackage.MEDICATION_DISPENSE__WHEN_HANDED_OVER:
setWhenHandedOver((DateTime)newValue);
return;
case FhirPackage.MEDICATION_DISPENSE__DESTINATION:
setDestination((Reference)newValue);
return;
case FhirPackage.MEDICATION_DISPENSE__RECEIVER:
getReceiver().clear();
getReceiver().addAll((Collection<? extends Reference>)newValue);
return;
case FhirPackage.MEDICATION_DISPENSE__NOTE:
setNote((org.hl7.fhir.String)newValue);
return;
case FhirPackage.MEDICATION_DISPENSE__DOSAGE_INSTRUCTION:
getDosageInstruction().clear();
getDosageInstruction().addAll((Collection<? extends MedicationDispenseDosageInstruction>)newValue);
return;
case FhirPackage.MEDICATION_DISPENSE__SUBSTITUTION:
setSubstitution((MedicationDispenseSubstitution)newValue);
return;
}
super.eSet(featureID, newValue);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public void eUnset(int featureID) {
switch (featureID) {
case FhirPackage.MEDICATION_DISPENSE__IDENTIFIER:
setIdentifier((Identifier)null);
return;
case FhirPackage.MEDICATION_DISPENSE__STATUS:
setStatus((MedicationDispenseStatus)null);
return;
case FhirPackage.MEDICATION_DISPENSE__PATIENT:
setPatient((Reference)null);
return;
case FhirPackage.MEDICATION_DISPENSE__DISPENSER:
setDispenser((Reference)null);
return;
case FhirPackage.MEDICATION_DISPENSE__AUTHORIZING_PRESCRIPTION:
getAuthorizingPrescription().clear();
return;
case FhirPackage.MEDICATION_DISPENSE__TYPE:
setType((CodeableConcept)null);
return;
case FhirPackage.MEDICATION_DISPENSE__QUANTITY:
setQuantity((SimpleQuantity)null);
return;
case FhirPackage.MEDICATION_DISPENSE__DAYS_SUPPLY:
setDaysSupply((SimpleQuantity)null);
return;
case FhirPackage.MEDICATION_DISPENSE__MEDICATION_CODEABLE_CONCEPT:
setMedicationCodeableConcept((CodeableConcept)null);
return;
case FhirPackage.MEDICATION_DISPENSE__MEDICATION_REFERENCE:
setMedicationReference((Reference)null);
return;
case FhirPackage.MEDICATION_DISPENSE__WHEN_PREPARED:
setWhenPrepared((DateTime)null);
return;
case FhirPackage.MEDICATION_DISPENSE__WHEN_HANDED_OVER:
setWhenHandedOver((DateTime)null);
return;
case FhirPackage.MEDICATION_DISPENSE__DESTINATION:
setDestination((Reference)null);
return;
case FhirPackage.MEDICATION_DISPENSE__RECEIVER:
getReceiver().clear();
return;
case FhirPackage.MEDICATION_DISPENSE__NOTE:
setNote((org.hl7.fhir.String)null);
return;
case FhirPackage.MEDICATION_DISPENSE__DOSAGE_INSTRUCTION:
getDosageInstruction().clear();
return;
case FhirPackage.MEDICATION_DISPENSE__SUBSTITUTION:
setSubstitution((MedicationDispenseSubstitution)null);
return;
}
super.eUnset(featureID);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public boolean eIsSet(int featureID) {
switch (featureID) {
case FhirPackage.MEDICATION_DISPENSE__IDENTIFIER:
return identifier != null;
case FhirPackage.MEDICATION_DISPENSE__STATUS:
return status != null;
case FhirPackage.MEDICATION_DISPENSE__PATIENT:
return patient != null;
case FhirPackage.MEDICATION_DISPENSE__DISPENSER:
return dispenser != null;
case FhirPackage.MEDICATION_DISPENSE__AUTHORIZING_PRESCRIPTION:
return authorizingPrescription != null && !authorizingPrescription.isEmpty();
case FhirPackage.MEDICATION_DISPENSE__TYPE:
return type != null;
case FhirPackage.MEDICATION_DISPENSE__QUANTITY:
return quantity != null;
case FhirPackage.MEDICATION_DISPENSE__DAYS_SUPPLY:
return daysSupply != null;
case FhirPackage.MEDICATION_DISPENSE__MEDICATION_CODEABLE_CONCEPT:
return medicationCodeableConcept != null;
case FhirPackage.MEDICATION_DISPENSE__MEDICATION_REFERENCE:
return medicationReference != null;
case FhirPackage.MEDICATION_DISPENSE__WHEN_PREPARED:
return whenPrepared != null;
case FhirPackage.MEDICATION_DISPENSE__WHEN_HANDED_OVER:
return whenHandedOver != null;
case FhirPackage.MEDICATION_DISPENSE__DESTINATION:
return destination != null;
case FhirPackage.MEDICATION_DISPENSE__RECEIVER:
return receiver != null && !receiver.isEmpty();
case FhirPackage.MEDICATION_DISPENSE__NOTE:
return note != null;
case FhirPackage.MEDICATION_DISPENSE__DOSAGE_INSTRUCTION:
return dosageInstruction != null && !dosageInstruction.isEmpty();
case FhirPackage.MEDICATION_DISPENSE__SUBSTITUTION:
return substitution != null;
}
return super.eIsSet(featureID);
}
} //MedicationDispenseImpl