/** * Saves a given IHotlistShort based on its value object type * @param IHotlistShort * @return IHotlistShort * @author mmccarthy */ public IHotlistShort saveIHotlistShort(IHotlistShort iHotlistShort) throws StaleObjectException { if ( iHotlistShort == null ) { throw new DomainRuntimeException ("Null parameter passed to 'saveIHotlistShort'"); } DomainFactory factory = getDomainFactory(); if ( iHotlistShort instanceof ProblemHotlistShortVo ) { ProblemHotlist domProblemHotlist = ProblemHotlistShortVoAssembler.extractProblemHotlist(factory, (ProblemHotlistShortVo)iHotlistShort); factory.save(domProblemHotlist); return ProblemHotlistShortVoAssembler.create(domProblemHotlist); } else if ( iHotlistShort instanceof ProcedureHotlistShortVo ) { ProcedureHotlist domProcedureHotlist = ProcedureHotlistShortVoAssembler.extractProcedureHotlist(factory, (ProcedureHotlistShortVo)iHotlistShort); factory.save(domProcedureHotlist); return ProcedureHotlistShortVoAssembler.create(domProcedureHotlist); } else if ( iHotlistShort instanceof DiagnosisHotListShortVo ) { DiagnosisHotlist domDiagnosisHotlist = DiagnosisHotListShortVoAssembler.extractDiagnosisHotlist(factory, (DiagnosisHotListShortVo)iHotlistShort); factory.save(domDiagnosisHotlist); return DiagnosisHotListShortVoAssembler.create(domDiagnosisHotlist); } else if ( iHotlistShort instanceof CancerImagingHotlistShortVo ) { CancerImagingHotlist domCancerImagingHotlist = CancerImagingHotlistShortVoAssembler.extractCancerImagingHotlist(factory, (CancerImagingHotlistShortVo)iHotlistShort); factory.save(domCancerImagingHotlist); return CancerImagingHotlistShortVoAssembler.create(domCancerImagingHotlist); } else if ( iHotlistShort instanceof MedicationHotlistShortVo ) { MedicationHotlist domMedicationHotlist = MedicationHotlistShortVoAssembler.extractMedicationHotlist(factory, (MedicationHotlistShortVo)iHotlistShort); factory.save(domMedicationHotlist); return MedicationHotlistShortVoAssembler.create(domMedicationHotlist); } else if ( iHotlistShort instanceof PresentingComplainHotlistVo) { PresentingComplaintHotlist domPresentingComplainHotlist = PresentingComplainHotlistVoAssembler.extractPresentingComplaintHotlist(factory, (PresentingComplainHotlistVo) iHotlistShort); factory.save(domPresentingComplainHotlist); return PresentingComplainHotlistVoAssembler.create(domPresentingComplainHotlist); } //WDEV-17060 else if ( iHotlistShort instanceof TreatmentInterventionHotlistShortVo) { TreatmentInterventionHotlist domTreatmentInterventionHotlist = TreatmentInterventionHotlistShortVoAssembler.extractTreatmentInterventionHotlist(factory, (TreatmentInterventionHotlistShortVo) iHotlistShort); factory.save(domTreatmentInterventionHotlist); return TreatmentInterventionHotlistShortVoAssembler.create(domTreatmentInterventionHotlist); } else { throw new DomainRuntimeException("Unknown CCI Type in 'saveIHotlistShort'"); } }