1 16 package org.springframework.webflow.test; 17 18 import org.springframework.webflow.core.collection.AttributeMap; 19 import org.springframework.webflow.core.collection.LocalAttributeMap; 20 import org.springframework.webflow.core.collection.MutableAttributeMap; 21 import org.springframework.webflow.definition.FlowDefinition; 22 import org.springframework.webflow.definition.StateDefinition; 23 import org.springframework.webflow.engine.Flow; 24 import org.springframework.webflow.engine.State; 25 import org.springframework.webflow.engine.ViewState; 26 import org.springframework.webflow.execution.FlowSession; 27 import org.springframework.webflow.execution.FlowSessionStatus; 28 29 36 public class MockFlowSession implements FlowSession { 37 38 private Flow definition; 39 40 private State state; 41 42 private FlowSessionStatus status = FlowSessionStatus.CREATED; 43 44 private MutableAttributeMap scope = new LocalAttributeMap(); 45 46 private MutableAttributeMap flashMap = new LocalAttributeMap(); 47 48 private FlowSession parent; 49 50 54 public MockFlowSession() { 55 setDefinition(new Flow("mockFlow")); 56 State state = new ViewState(definition, "mockState"); 57 setStatus(FlowSessionStatus.ACTIVE); 58 setState(state); 59 } 60 61 65 public MockFlowSession(Flow flow) { 66 setDefinition(flow); 67 } 68 69 75 public MockFlowSession(Flow flow, AttributeMap input) { 76 setDefinition(flow); 77 scope.putAll(input); 78 } 79 80 82 public FlowDefinition getDefinition() { 83 return definition; 84 } 85 86 public StateDefinition getState() { 87 return state; 88 } 89 90 public FlowSessionStatus getStatus() { 91 return status; 92 } 93 94 public MutableAttributeMap getScope() { 95 return scope; 96 } 97 98 public MutableAttributeMap getFlashMap() { 99 return flashMap; 100 } 101 102 public FlowSession getParent() { 103 return parent; 104 } 105 106 public boolean isRoot() { 107 return parent == null; 108 } 109 110 112 115 public void setDefinition(Flow flow) { 116 this.definition = flow; 117 } 118 119 122 public void setState(State state) { 123 this.state = state; 124 } 125 126 129 public void setStatus(FlowSessionStatus status) { 130 this.status = status; 131 } 132 133 137 public void setScope(MutableAttributeMap scope) { 138 this.scope = scope; 139 } 140 141 145 public void setParent(FlowSession parent) { 146 this.parent = parent; 147 } 148 149 151 154 public Flow getDefinitionInternal() { 155 return definition; 156 } 157 158 161 public State getStateInternal() { 162 return state; 163 } 164 } | Popular Tags |