1 18 package loanbroker; 19 20 import org.apache.commons.logging.Log; 21 import org.apache.commons.logging.LogFactory; 22 import org.apache.servicemix.components.util.TransformComponentSupport; 23 24 import javax.jbi.messaging.MessageExchange; 25 import javax.jbi.messaging.MessagingException; 26 import javax.jbi.messaging.NormalizedMessage; 27 import javax.xml.namespace.QName ; 28 29 public class LenderGateway extends TransformComponentSupport { 30 31 private static final Log log = LogFactory.getLog(LenderGateway.class); 32 33 protected boolean transform(MessageExchange exchange, NormalizedMessage in, NormalizedMessage out) throws MessagingException { 34 log.info("Receiving lender gateway request"); 35 double amount = ((Double ) in.getProperty(Constants.PROPERTY_AMOUNT)).doubleValue(); 36 int score = ((Integer ) in.getProperty(Constants.PROPERTY_SCORE)).intValue(); 37 int hlength = ((Integer ) in.getProperty(Constants.PROPERTY_HISTORYLENGTH)).intValue(); 38 QName [] recipients; 39 if (amount >= 75000.0 && score >= 600 && hlength >= 8) { 40 recipients = new QName [] { new QName (Constants.LOANBROKER_NS, "bank1"), 41 new QName (Constants.LOANBROKER_NS, "bank2") }; 42 } else 43 if (amount >= 10000.0 && amount < 75000.0 && score >= 400 && hlength >= 3) { 44 recipients = new QName [] { new QName (Constants.LOANBROKER_NS, "bank3"), 45 new QName (Constants.LOANBROKER_NS, "bank4") }; 46 } else { 47 recipients = new QName [] { new QName (Constants.LOANBROKER_NS, "bank5") }; 48 } 49 out.setProperty(Constants.PROPERTY_RECIPIENTS, recipients); 50 return true; 51 } 52 53 } 54
| Popular Tags
|