001 /** 002 * Copyright 2005-2013 The Kuali Foundation 003 * 004 * Licensed under the Educational Community License, Version 2.0 (the "License"); 005 * you may not use this file except in compliance with the License. 006 * You may obtain a copy of the License at 007 * 008 * http://www.opensource.org/licenses/ecl2.php 009 * 010 * Unless required by applicable law or agreed to in writing, software 011 * distributed under the License is distributed on an "AS IS" BASIS, 012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 013 * See the License for the specific language governing permissions and 014 * limitations under the License. 015 */ 016 package mocks; 017 018 import java.util.List; 019 020 import org.kuali.rice.kew.api.action.ActionType; 021 import org.kuali.rice.kew.framework.postprocessor.ActionTakenEvent; 022 import org.kuali.rice.kew.framework.postprocessor.AfterProcessEvent; 023 import org.kuali.rice.kew.framework.postprocessor.BeforeProcessEvent; 024 import org.kuali.rice.kew.framework.postprocessor.DeleteEvent; 025 import org.kuali.rice.kew.framework.postprocessor.DocumentLockingEvent; 026 import org.kuali.rice.kew.framework.postprocessor.DocumentRouteLevelChange; 027 import org.kuali.rice.kew.framework.postprocessor.DocumentRouteStatusChange; 028 import org.kuali.rice.kew.framework.postprocessor.PostProcessor; 029 import org.kuali.rice.kew.framework.postprocessor.ProcessDocReport; 030 031 public class MockPostProcessor implements PostProcessor { 032 033 private boolean processDocReportResult = true; 034 private boolean actionTakenResult = true; 035 private boolean processMethodsDocReportResult = true; 036 private List<String> documentIdsToLockResult = null; 037 038 public MockPostProcessor() { 039 this(true); 040 } 041 042 public MockPostProcessor(boolean processDocReportResult) { 043 this(processDocReportResult, true); 044 } 045 046 public MockPostProcessor(boolean processDocReportResult, boolean actionTakenResult) { 047 this(processDocReportResult, actionTakenResult, true); 048 } 049 050 public MockPostProcessor(boolean processDocReportResult, boolean actionTakenResult, boolean processMethodsDocReportResult) { 051 this(processDocReportResult, actionTakenResult, processMethodsDocReportResult, null); 052 } 053 054 public MockPostProcessor(boolean processDocReportResult, boolean actionTakenResult, boolean processMethodsDocReportResult, List<String> documentIdsToLockResult) { 055 this.processDocReportResult = processDocReportResult; 056 this.actionTakenResult = actionTakenResult; 057 this.processMethodsDocReportResult = processMethodsDocReportResult; 058 this.documentIdsToLockResult = documentIdsToLockResult; 059 } 060 061 public ProcessDocReport doDeleteRouteHeader(DeleteEvent event) throws Exception { 062 return new ProcessDocReport(processDocReportResult, "testing"); 063 } 064 public ProcessDocReport doRouteLevelChange(DocumentRouteLevelChange levelChangeEvent) throws Exception { 065 return new ProcessDocReport(processDocReportResult, "testing"); 066 } 067 public ProcessDocReport doRouteStatusChange(DocumentRouteStatusChange statusChangeEvent) throws Exception { 068 return new ProcessDocReport(processDocReportResult, "testing"); 069 } 070 071 public ProcessDocReport doActionTaken(ActionTakenEvent event) throws Exception { 072 return new ProcessDocReport(actionTakenResult, "testing"); 073 } 074 075 public ProcessDocReport afterActionTaken(ActionType performed, ActionTakenEvent event) throws Exception { 076 return new ProcessDocReport(actionTakenResult, "testing"); 077 } 078 079 public ProcessDocReport beforeProcess(BeforeProcessEvent event) throws Exception { 080 return new ProcessDocReport(processMethodsDocReportResult, "testing"); 081 } 082 083 public ProcessDocReport afterProcess(AfterProcessEvent event) throws Exception { 084 return new ProcessDocReport(processMethodsDocReportResult, "testing"); 085 } 086 087 public List<String> getDocumentIdsToLock(DocumentLockingEvent lockingEvent) throws Exception { 088 return documentIdsToLockResult; 089 } 090 091 public void setProcessDocReportResult(boolean processDocReportResult) { 092 this.processDocReportResult = processDocReportResult; 093 } 094 095 public void setActionTakenResult(boolean actionTakenResult) { 096 this.actionTakenResult = actionTakenResult; 097 } 098 099 public void setProcessMethodsDocReportResult(boolean processMethodsDocReportResult) { 100 this.processMethodsDocReportResult = processMethodsDocReportResult; 101 } 102 103 public void setDocumentIdsToLockResult(List<String> documentIdsToLockResult) { 104 this.documentIdsToLockResult = documentIdsToLockResult; 105 } 106 107 }