[jboss-svn-commits] JBL Code SVN: r5626 - labs/jbossesb/trunk/product/docs/samples/trailblazer/bankloanbrokerdemo/java/src/org/jboss/soa/esb/samples/loanbroker/actions
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Tue Aug 8 22:34:25 EDT 2006
Author: daniel.brum at jboss.com
Date: 2006-08-08 22:34:23 -0400 (Tue, 08 Aug 2006)
New Revision: 5626
Modified:
labs/jbossesb/trunk/product/docs/samples/trailblazer/bankloanbrokerdemo/java/src/org/jboss/soa/esb/samples/loanbroker/actions/ProcessCreditRequest.java
labs/jbossesb/trunk/product/docs/samples/trailblazer/bankloanbrokerdemo/java/src/org/jboss/soa/esb/samples/loanbroker/actions/ProcessCreditResponse.java
Log:
updated to work with new GpListener
Modified: labs/jbossesb/trunk/product/docs/samples/trailblazer/bankloanbrokerdemo/java/src/org/jboss/soa/esb/samples/loanbroker/actions/ProcessCreditRequest.java
===================================================================
--- labs/jbossesb/trunk/product/docs/samples/trailblazer/bankloanbrokerdemo/java/src/org/jboss/soa/esb/samples/loanbroker/actions/ProcessCreditRequest.java 2006-08-09 02:28:57 UTC (rev 5625)
+++ labs/jbossesb/trunk/product/docs/samples/trailblazer/bankloanbrokerdemo/java/src/org/jboss/soa/esb/samples/loanbroker/actions/ProcessCreditRequest.java 2006-08-09 02:34:23 UTC (rev 5626)
@@ -22,10 +22,11 @@
package org.jboss.soa.esb.samples.loanbroker.actions;
-import org.jboss.soa.esb.processors.*;
+import org.jboss.soa.esb.actions.*;
import org.jboss.soa.esb.samples.loanbroker.creditagency.CreditCheckRequest;
import org.jboss.soa.esb.samples.loanbroker.creditagency.CreditCheckResponse;
import org.jboss.soa.esb.helpers.*;
+import org.jboss.soa.esb.listeners.GpListener;
import com.sun.mail.iap.Response;
@@ -37,7 +38,7 @@
-public class ProcessCreditRequest extends MsgProcessor
+public class ProcessCreditRequest extends AbstractAction
{
public Integer creditScore;
private CreditCheckResponse creditResponse;
@@ -45,10 +46,47 @@
/*
* the base class sets up the parameter tree being used by this action class
*/
- public ProcessCreditRequest(DomElement p_parms) throws Exception
+ public ProcessCreditRequest(DomElement p_oP, Object p_oCurr) throws Exception
{
- super(p_parms);
+ super(p_oP, p_oCurr);
}
+
+ public void run()
+ {
+ try
+ {
+ processCurrentObject();
+ GpListener.notifyOK(m_oParms,getOkNotification());
+ }
+ catch (Exception e)
+ {
+ GpListener.notifyError(m_oParms,e,getErrorNotification());
+ }
+ finally
+ { setChanged();
+ notifyObservers(new Integer(-1));
+ }
+ } //________________________________
+
+ @Override
+ public void processCurrentObject() throws Exception
+ {
+ m_oLogger.info("processObject was called with <<"
+ +m_oCurr.toString()+">>");
+
+ if (! (m_oCurr instanceof ObjectMessage))
+ throw new Exception("Message must be a ObjectMessage");
+ System.out.println(m_oCurr);
+ CreditCheckRequest creditRequest = (CreditCheckRequest)((ObjectMessage)m_oCurr).getObject();
+
+ //use the notification framework to send back our response
+ //use a dummy score between 0 and 10
+ Random generator = new Random();
+ creditScore = new Integer(generator.nextInt(10));
+ //create our Response
+ creditResponse = new CreditCheckResponse(creditRequest.requestID, creditScore);
+
+ } //________________________________
public void processMessage(Message p_oMsg) throws Exception
{
@@ -75,4 +113,12 @@
{
return creditResponse;
}
+
+ @Override
+ public Serializable getErrorNotification()
+ {
+ return "error occured in " + this.getClass();
+ } //________________________________
+
+
}
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 02:28:57 UTC (rev 5625)
+++ labs/jbossesb/trunk/product/docs/samples/trailblazer/bankloanbrokerdemo/java/src/org/jboss/soa/esb/samples/loanbroker/actions/ProcessCreditResponse.java 2006-08-09 02:34:23 UTC (rev 5626)
@@ -22,25 +22,65 @@
package org.jboss.soa.esb.samples.loanbroker.actions;
+import java.io.Serializable;
import java.util.Random;
import javax.jms.Message;
import javax.jms.ObjectMessage;
+import org.jboss.soa.esb.actions.*;
import org.jboss.soa.esb.helpers.DomElement;
-import org.jboss.soa.esb.processors.MsgProcessor;
+import org.jboss.soa.esb.listeners.GpListener;
import org.jboss.soa.esb.samples.loanbroker.creditagency.CreditCheckRequest;
+import org.jboss.soa.esb.samples.loanbroker.creditagency.CreditCheckResponse;
-public class ProcessCreditResponse extends MsgProcessor {
+public class ProcessCreditResponse extends AbstractAction {
- public ProcessCreditResponse(DomElement p_oP) throws Exception {
- super(p_oP);
-
+ public ProcessCreditResponse(DomElement p_oP, Object p_oCurr) throws Exception {
+ super(p_oP, p_oCurr);
}
- public void processMessage(Message p_oMsg) throws Exception
+ public void processCurrentObject() throws Exception
{
- System.out.println(p_oMsg);
- }
+ m_oLogger.info("processObject was called with <<"
+ +m_oCurr.toString()+">>");
+
+ if (! (m_oCurr instanceof ObjectMessage))
+ throw new Exception("Message must be a ObjectMessage");
+ System.out.println(m_oCurr);
+
+ //TODO: add code here to send information (customer and credit info to banks)
+
+ } //________________________________
+
+ public Serializable getOkNotification()
+ {
+ return "Message sent to banks from " + this.getClass();
+ }
+
+ @Override
+ public Serializable getErrorNotification()
+ {
+ return "error occured in " + this.getClass();
+ } //________________________________
+
+ public void run()
+ {
+ try
+ {
+ processCurrentObject();
+ GpListener.notifyOK(m_oParms,getOkNotification());
+ }
+ catch (Exception e)
+ {
+ GpListener.notifyError(m_oParms,e,getErrorNotification());
+ }
+ finally
+ { setChanged();
+ notifyObservers(new Integer(-1));
+ }
+ } //________________________________
+
+
}
More information about the jboss-svn-commits
mailing list