[jboss-svn-commits] JBL Code SVN: r5670 - in labs/jbossesb/trunk/product/docs/samples/trailblazer/bankloanbrokerdemo/java/src/org/jboss/soa/esb/samples/loanbroker: actions adapters domain web

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Wed Aug 9 17:39:55 EDT 2006


Author: daniel.brum at jboss.com
Date: 2006-08-09 17:39:52 -0400 (Wed, 09 Aug 2006)
New Revision: 5670

Added:
   labs/jbossesb/trunk/product/docs/samples/trailblazer/bankloanbrokerdemo/java/src/org/jboss/soa/esb/samples/loanbroker/actions/ProcessBanksJMSResponse.java
   labs/jbossesb/trunk/product/docs/samples/trailblazer/bankloanbrokerdemo/java/src/org/jboss/soa/esb/samples/loanbroker/domain/BanksQuoteRequest.java
   labs/jbossesb/trunk/product/docs/samples/trailblazer/bankloanbrokerdemo/java/src/org/jboss/soa/esb/samples/loanbroker/domain/BanksQuoteResponse.java
Modified:
   labs/jbossesb/trunk/product/docs/samples/trailblazer/bankloanbrokerdemo/java/src/org/jboss/soa/esb/samples/loanbroker/actions/ProcessCreditResponse.java
   labs/jbossesb/trunk/product/docs/samples/trailblazer/bankloanbrokerdemo/java/src/org/jboss/soa/esb/samples/loanbroker/adapters/CustomerAdapter.java
   labs/jbossesb/trunk/product/docs/samples/trailblazer/bankloanbrokerdemo/java/src/org/jboss/soa/esb/samples/loanbroker/web/LoanBrokerWS.java
Log:


Added: labs/jbossesb/trunk/product/docs/samples/trailblazer/bankloanbrokerdemo/java/src/org/jboss/soa/esb/samples/loanbroker/actions/ProcessBanksJMSResponse.java
===================================================================
--- labs/jbossesb/trunk/product/docs/samples/trailblazer/bankloanbrokerdemo/java/src/org/jboss/soa/esb/samples/loanbroker/actions/ProcessBanksJMSResponse.java	2006-08-09 20:50:43 UTC (rev 5669)
+++ labs/jbossesb/trunk/product/docs/samples/trailblazer/bankloanbrokerdemo/java/src/org/jboss/soa/esb/samples/loanbroker/actions/ProcessBanksJMSResponse.java	2006-08-09 21:39:52 UTC (rev 5670)
@@ -0,0 +1,38 @@
+package org.jboss.soa.esb.samples.loanbroker.actions;
+
+import java.io.Serializable;
+
+import org.jboss.soa.esb.actions.AbstractAction;
+import org.jboss.soa.esb.helpers.DomElement;
+
+public class ProcessBanksJMSResponse extends AbstractAction {
+
+	public ProcessBanksJMSResponse(DomElement p_oP, Object p_oCurr) {
+		super(p_oP, p_oCurr);
+		// TODO Auto-generated constructor stub
+	}
+
+	@Override
+	public void processCurrentObject() throws Exception {
+		// TODO Auto-generated method stub
+
+	}
+
+	@Override
+	public Serializable getOkNotification() {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	@Override
+	public Serializable getErrorNotification() {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	public void run() {
+		// TODO Auto-generated method stub
+
+	}
+
+}

Modified: labs/jbossesb/trunk/product/docs/samples/trailblazer/bankloanbrokerdemo/java/src/org/jboss/soa/esb/samples/loanbroker/actions/ProcessCreditResponse.java
===================================================================
--- labs/jbossesb/trunk/product/docs/samples/trailblazer/bankloanbrokerdemo/java/src/org/jboss/soa/esb/samples/loanbroker/actions/ProcessCreditResponse.java	2006-08-09 20:50:43 UTC (rev 5669)
+++ labs/jbossesb/trunk/product/docs/samples/trailblazer/bankloanbrokerdemo/java/src/org/jboss/soa/esb/samples/loanbroker/actions/ProcessCreditResponse.java	2006-08-09 21:39:52 UTC (rev 5670)
@@ -124,6 +124,10 @@
 			//get a customer in the format required by the JMS Bank
 			BanksQuoteRequest quote = CustomerAdapter.bankQuoteFromCustomer(customer);
 			XStream xstream = new XStream();
+			
+			//we do this alias step below to ensure that the xml stream generated uses the package name expected by the Banks JMS process
+			//or it will not be able to deserialize the stream back into the object the bank expects
+			xstream.alias("org.jboss.soa.esb.samples.loanbroker.banks.BankQuoteRequest", quote.getClass());
 			String bankQuoteRequestXml=xstream.toXML(quote);
 			
 			TextMessage msg = sess.createTextMessage(bankQuoteRequestXml);

Modified: labs/jbossesb/trunk/product/docs/samples/trailblazer/bankloanbrokerdemo/java/src/org/jboss/soa/esb/samples/loanbroker/adapters/CustomerAdapter.java
===================================================================
--- labs/jbossesb/trunk/product/docs/samples/trailblazer/bankloanbrokerdemo/java/src/org/jboss/soa/esb/samples/loanbroker/adapters/CustomerAdapter.java	2006-08-09 20:50:43 UTC (rev 5669)
+++ labs/jbossesb/trunk/product/docs/samples/trailblazer/bankloanbrokerdemo/java/src/org/jboss/soa/esb/samples/loanbroker/adapters/CustomerAdapter.java	2006-08-09 21:39:52 UTC (rev 5670)
@@ -22,20 +22,26 @@
 
 package org.jboss.soa.esb.samples.loanbroker.adapters;
 
+import java.io.IOException;
 import java.text.*;
+import java.math.BigDecimal;
 
 import org.jboss.soa.esb.samples.loanbroker.domain.*;
 import org.jboss.soa.esb.samples.loanbroker.web.WebCustomer;
 import org.jboss.soa.esb.util.*;
 import org.jboss.soa.esb.common.bizclasses.*;
+import org.jboss.soa.esb.helpers.DomElement;
+import org.xml.sax.SAXException;
 
 public class CustomerAdapter 
 {
 	// No objects of this class - only static methods
 	private CustomerAdapter() {}
 	
-	private static final NumberFormat s_NF = new DecimalFormat("#########0.00");
+	private static final NumberFormat s_NF 		= new DecimalFormat("#########0.00");
+	private static final NumberFormat s_NFBanks = new DecimalFormat("#########0");
 
+
 	public static Customer esbFromWeb (WebCustomer	p_o) 
     {
 		Person oP = new Person((String)null);
@@ -92,15 +98,30 @@
 	public static BanksQuoteRequest bankQuoteFromCustomer(Customer p_o) {
 		BanksQuoteRequest bankRequest = new BanksQuoteRequest();
 		CreditRating rating = p_o.getRating();
-		bankRequest.creditScore = rating.getScore();
-		bankRequest.loanAmount 	= Double.parseDouble(p_o.getField(Customer.ATTRIB.loanAmt));
+		bankRequest.creditScore = rating.getScore();		
+		String sVal = new DecimalFormat("########0").format(Double.parseDouble(p_o.getField(Customer.ATTRIB.loanAmt)));		
+		bankRequest.loanAmount 	=  Integer.parseInt(sVal);
+		System.out.println("bankRequest.loanAmount:" + bankRequest.loanAmount);
 		bankRequest.loanTerm	= Integer.parseInt(p_o.getField(Customer.ATTRIB.loanDur));
 		bankRequest.ssn			= Integer.parseInt(p_o.getField(Customer.ATTRIB.ssn));
 		
-		return bankRequest;
+		return bankRequest;		
+	}
+	
+	//convert from the XMLStream object into a quote object
+	public static BanksQuoteResponse bankQuoteFromXML(String xml) {
+		DomElement oEl=null;
+		BanksQuoteResponse response = new BanksQuoteResponse();
 		
+		try {
+			oEl = DomElement.fromXml(xml);
+		} catch (Exception e) {e.printStackTrace();}		
 		
+		response.interestRate 	= BigDecimal.valueOf(Double.parseDouble(oEl.getTextChildren("interestRate")[0]));
+		response.quoteId		= oEl.getTextChildren("quoteId")[0];
+		response.errorCode		= Integer.parseInt(oEl.getTextChildren("errorCode")[0]);
 		
+		return response;
 	}
     
 

Added: labs/jbossesb/trunk/product/docs/samples/trailblazer/bankloanbrokerdemo/java/src/org/jboss/soa/esb/samples/loanbroker/domain/BanksQuoteRequest.java
===================================================================
--- labs/jbossesb/trunk/product/docs/samples/trailblazer/bankloanbrokerdemo/java/src/org/jboss/soa/esb/samples/loanbroker/domain/BanksQuoteRequest.java	2006-08-09 20:50:43 UTC (rev 5669)
+++ labs/jbossesb/trunk/product/docs/samples/trailblazer/bankloanbrokerdemo/java/src/org/jboss/soa/esb/samples/loanbroker/domain/BanksQuoteRequest.java	2006-08-09 21:39:52 UTC (rev 5670)
@@ -0,0 +1,72 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2006, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+
+package org.jboss.soa.esb.samples.loanbroker.domain;
+
+import java.io.Serializable;
+
+public class BanksQuoteRequest {
+	
+	public int ssn;
+	public int creditScore;
+	public int historyLength=0;	//setting to 0 for now, don't have that in the CreditAgency 
+	public int loanAmount;
+	public int loanTerm;
+
+	public BanksQuoteRequest() {
+		super();
+		// TODO Auto-generated constructor stub
+	}
+
+	public int getCreditScore() {
+		return creditScore;
+	}
+
+	public void setCreditScore(int creditScore) {
+		this.creditScore = creditScore;
+	}
+
+	public int getLoanAmount() {
+		return loanAmount;
+	}
+
+	public void setLoanAmount(int loanAmount) {
+		this.loanAmount = loanAmount;
+	}
+
+	public int getLoanTerm() {
+		return loanTerm;
+	}
+
+	public void setLoanTerm(int loanTerm) {
+		this.loanTerm = loanTerm;
+	}
+
+	public int getSsn() {
+		return ssn;
+	}
+
+	public void setSsn(int ssn) {
+		this.ssn = ssn;
+	}
+
+}

Added: labs/jbossesb/trunk/product/docs/samples/trailblazer/bankloanbrokerdemo/java/src/org/jboss/soa/esb/samples/loanbroker/domain/BanksQuoteResponse.java
===================================================================
--- labs/jbossesb/trunk/product/docs/samples/trailblazer/bankloanbrokerdemo/java/src/org/jboss/soa/esb/samples/loanbroker/domain/BanksQuoteResponse.java	2006-08-09 20:50:43 UTC (rev 5669)
+++ labs/jbossesb/trunk/product/docs/samples/trailblazer/bankloanbrokerdemo/java/src/org/jboss/soa/esb/samples/loanbroker/domain/BanksQuoteResponse.java	2006-08-09 21:39:52 UTC (rev 5670)
@@ -0,0 +1,15 @@
+package org.jboss.soa.esb.samples.loanbroker.domain;
+
+import java.math.BigDecimal;
+
+public class BanksQuoteResponse {
+	
+	public BigDecimal interestRate;
+	public String quoteId;
+	public int errorCode;
+
+	public BanksQuoteResponse() {
+		super();
+	}
+	
+}
\ No newline at end of file

Modified: labs/jbossesb/trunk/product/docs/samples/trailblazer/bankloanbrokerdemo/java/src/org/jboss/soa/esb/samples/loanbroker/web/LoanBrokerWS.java
===================================================================
--- labs/jbossesb/trunk/product/docs/samples/trailblazer/bankloanbrokerdemo/java/src/org/jboss/soa/esb/samples/loanbroker/web/LoanBrokerWS.java	2006-08-09 20:50:43 UTC (rev 5669)
+++ labs/jbossesb/trunk/product/docs/samples/trailblazer/bankloanbrokerdemo/java/src/org/jboss/soa/esb/samples/loanbroker/web/LoanBrokerWS.java	2006-08-09 21:39:52 UTC (rev 5670)
@@ -37,6 +37,7 @@
 import javax.jms.*;
 
 
+import java.text.DecimalFormat;
 import java.util.Properties;
 
 import org.jboss.soa.esb.samples.loanbroker.adapters.CustomerAdapter;
@@ -99,7 +100,8 @@
 public static void main(String args[]) throws Exception{
 	LoanBrokerWS ws = new LoanBrokerWS();
 	WebCustomer customer = new WebCustomer("John Doe", "123 My St.", "JBoss", 50.00, 12, 100.00,123456);
-	ws.RequestLoan(customer);
-		
+	ws.RequestLoan(customer);	
 	}
+
+
 }




More information about the jboss-svn-commits mailing list