The facade operation calls the evidence service layer implementation.
// __________________________________________________________ /** * Modifies an Asset evidence record. * * @param details The modified evidence details. * * @return The details of the modified evidence record. */ public ReturnEvidenceDetails modifyAssetEvidence( AssetEvidenceDetails dtls) throws AppException, InformationalException { // set the informational manager for the transaction TransactionInfo.setInformationalManager(); // Asset evidence manipulation object Asset evidenceObj = AssetFactory.newInstance(); // return object ReturnEvidenceDetails modifiedEvidenceDetails = new ReturnEvidenceDetails(); // modify the Asset record and populate the return details modifiedEvidenceDetails = evidenceObj.modifyAssetEvidence(dtls); modifiedEvidenceDetails.warnings = EvidenceControllerFactory.newInstance().getWarnings(); return modifiedEvidenceDetails; }
This service layer operation calls the Evidence Controller infrastructure function for modifying evidence.
// __________________________________________________________ /** * Modifies an Asset record. * * @param dtls Contains Asset evidence record modification * details. * * @return The modified evidence ID and warnings. */ public ReturnEvidenceDetails modifyAssetEvidence (AssetEvidenceDetails details) throws AppException, InformationalException { // validate the mandatory fields validateMandatoryDetails(details); // EvidenceController business object EvidenceControllerInterface evidenceControllerObj = (EvidenceControllerInterface) EvidenceControllerFactory.newInstance(); EIEvidenceKey eiEvidenceKey = new EIEvidenceKey(); // // Call the EvidenceController to modify the evidence // eiEvidenceKey.evidenceID = details.dtls.evidenceID; eiEvidenceKey.evidenceType = CASEEVIDENCE.ASSET; // Create the evidence interface modification struct and assign // the details EIEvidenceModifyDtls eiEvidenceModifyDtls = new EIEvidenceModifyDtls(); eiEvidenceModifyDtls.descriptor.receivedDate = details.descriptor.receivedDate; eiEvidenceModifyDtls.descriptor.versionNo = details.descriptor.versionNo; eiEvidenceModifyDtls.descriptor.effectiveFrom = details.descriptor.effectiveFrom; eiEvidenceModifyDtls.descriptor.changeReceivedDate = details.descriptor.changeReceivedDate; eiEvidenceModifyDtls.descriptor.changeReason = details.descriptor.changeReason; eiEvidenceModifyDtls.evidenceObject = details.dtls; evidenceControllerObj.modifyEvidence( eiEvidenceKey, eiEvidenceModifyDtls); // // Return details from the modify operation // ReturnEvidenceDetails returnEvidenceDetails = new ReturnEvidenceDetails(); returnEvidenceDetails.evidenceKey.evidenceID = eiEvidenceKey.evidenceID; returnEvidenceDetails.evidenceKey.evType = eiEvidenceKey.evidenceType; returnEvidenceDetails.warnings = evidenceControllerObj.getWarnings(); return returnEvidenceDetails; }