1 16 package org.springframework.webflow.action; 17 18 import java.lang.reflect.Method ; 19 20 29 public class ResultEventFactorySelector { 30 31 34 private SuccessEventFactory successEventFactory = new SuccessEventFactory(); 35 36 40 private ResultObjectBasedEventFactory resultObjectBasedEventFactory = new ResultObjectBasedEventFactory(); 41 42 48 public ResultEventFactory forMethod(Method method) { 49 return forType(method.getReturnType()); 50 } 51 52 57 public ResultEventFactory forResult(Object result) { 58 if (result == null) { 59 return successEventFactory; 60 } 61 else { 62 return forType(result.getClass()); 63 } 64 } 65 66 75 protected ResultEventFactory forType(Class resultType) { 76 if (resultObjectBasedEventFactory.isMappedValueType(resultType)) { 77 return resultObjectBasedEventFactory; 78 } 79 else { 80 return successEventFactory; 81 } 82 } 83 } | Popular Tags |