01 /*
02 * Created on Aug 29, 2007
03 */
04 package com.x8ing.mc.bp.develop;
05
06 import java.util.Iterator;
07 import java.util.List;
08
09 import com.x8ing.lsm4j.Condition;
10 import com.x8ing.lsm4j.state.ProcessableState;
11 import com.x8ing.mc.bp.AbstractBusinessAction;
12 import com.x8ing.mc.bp.BalanceAccount;
13 import com.x8ing.mc.bp.Bug;
14 import com.x8ing.mc.bp.BusinessContext;
15
16 /**
17 * @author Patrick Heusser
18 */
19 public class AddBugToFixListAction extends AbstractBusinessAction {
20
21 /**
22 * @see com.x8ing.mc.bp.AbstractBusinessAction#execute(com.x8ing.lsm4j.state.ProcessableState,
23 * com.x8ing.mc.bp.BusinessContext, com.x8ing.lsm4j.Condition, java.util.List)
24 */
25 public void execute(ProcessableState currentState, BusinessContext businessContext, Condition previousCondition,
26 List lastVisitedStatesHistory) {
27
28 // our work finished
29 businessContext.setDevelopProcessBusy(false);
30
31 for (Iterator bugIt = businessContext.getBugs().getBugsWithStateNew().iterator(); bugIt.hasNext();) {
32
33 Bug bug = (Bug) bugIt.next();
34 bug.setBugState(Bug.BugState.STATE_BUG_FIX_LATER);
35
36 addBalanceSheetTransaction("cost for add bug (id=" + bug.getBugID() + ") to fix later list.", -businessContext
37 .getConfiguration().getCostActionAddBugToFixList(), BalanceAccount.DEVELOP);
38
39 addLogBookEntry("Added bug (id=" + bug.getBugID()
40 + ") to fix-later-list. It was not worth to fix it immediately. Current sum of bug caused loss:"
41 + businessContext.calculateTotalProcessLossOfAllBugsNotDeployedYet());
42
43 }
44
45 }
46
47 protected void lazyInit() {
48 // empty
49
50 }
51 }
|