1 16 package org.springframework.webflow.engine.support; 17 18 import java.io.Serializable ; 19 20 import org.springframework.util.Assert; 21 import org.springframework.webflow.engine.TransitionCriteria; 22 import org.springframework.webflow.execution.Event; 23 import org.springframework.webflow.execution.RequestContext; 24 25 35 public class EventIdTransitionCriteria implements TransitionCriteria, Serializable { 36 37 40 private String eventId; 41 42 45 private boolean caseSensitive = true; 46 47 51 public EventIdTransitionCriteria(String eventId) { 52 Assert.hasText(eventId, "The event id is required"); 53 this.eventId = eventId; 54 } 55 56 59 public String getEventId() { 60 return eventId; 61 } 62 63 67 public void setCaseSensitive(boolean caseSensitive) { 68 this.caseSensitive = caseSensitive; 69 } 70 71 public boolean test(RequestContext context) { 72 Event lastEvent = context.getLastEvent(); 73 if (lastEvent == null) { 74 return false; 75 } 76 if (caseSensitive) { 77 return eventId.equals(lastEvent.getId()); 78 } 79 else { 80 return eventId.equalsIgnoreCase(lastEvent.getId()); 81 } 82 } 83 84 public String toString() { 85 return "[eventId = '" + eventId + "']"; 86 } 87 } | Popular Tags |