001package org.kuali.ole.service.impl;
002
003import org.kuali.ole.service.OleGloballyProtectedFieldService;
004import org.kuali.rice.krad.maintenance.MaintenanceDocument;
005import org.kuali.rice.krad.service.impl.MaintenanceDocumentServiceImpl;
006import org.kuali.rice.krad.util.ObjectUtils;
007
008import java.io.Serializable;
009import java.util.Map;
010
011/**
012 * This OleGloballyProtectedFieldServiceImpl is the implementation for the Service OleGloballyProtectedFieldService
013 */
014public class OleGloballyProtectedFieldServiceImpl extends MaintenanceDocumentServiceImpl implements OleGloballyProtectedFieldService {
015
016
017    /**
018     * @see org.kuali.rice.krad.service.impl.MaintenanceDocumentServiceImpl#setupMaintenanceObject
019     */
020    /**
021     * This method creates maintenance object for delete operation using maintenanceAction.
022     * @param document
023     * @param maintenanceAction
024     * @param requestParameters
025     */
026    public void setupMaintenanceObjectForDelete(MaintenanceDocument document, String maintenanceAction,
027                                                Map<String, String[]> requestParameters) {
028        document.getNewMaintainableObject().setMaintenanceAction(maintenanceAction);
029        document.getOldMaintainableObject().setMaintenanceAction(maintenanceAction);
030
031        Object oldDataObject = retrieveObjectForMaintenance(document, requestParameters);
032        Object newDataObject = ObjectUtils.deepCopy((Serializable) oldDataObject);
033
034        document.getOldMaintainableObject().setDataObject(oldDataObject);
035        document.getNewMaintainableObject().setDataObject(newDataObject);
036    }
037
038
039
040}