View Javadoc

1   /*
2    * $Id: LoanQuoteRequestToCreditProfileArgs.java 19250 2010-08-30 16:53:14Z dirk.olmes $
3    * --------------------------------------------------------------------------------------
4    * Copyright (c) MuleSoft, Inc.  All rights reserved.  http://www.mulesoft.com
5    *
6    * The software in this package is published under the terms of the CPAL v1.0
7    * license, a copy of which has been included with this distribution in the
8    * LICENSE.txt file.
9    */
10  
11  package org.mule.example.loanbroker.transformers;
12  
13  import org.mule.api.transformer.TransformerException;
14  import org.mule.example.loanbroker.messages.LoanBrokerQuoteRequest;
15  import org.mule.transformer.AbstractTransformer;
16  import org.mule.transformer.types.DataTypeFactory;
17  
18  /**
19   * Extracts the customer information from the request into an array of arguments used
20   * to invoke the Credit Agency MuleSession bean
21   */
22  public class LoanQuoteRequestToCreditProfileArgs extends AbstractTransformer
23  {
24  
25      public LoanQuoteRequestToCreditProfileArgs()
26      {
27          registerSourceType(DataTypeFactory.create(LoanBrokerQuoteRequest.class));
28          setReturnDataType(DataTypeFactory.create(Object[].class));
29      }
30  
31      @Override
32      public Object doTransform(Object src, String encoding) throws TransformerException
33      {
34          LoanBrokerQuoteRequest request = (LoanBrokerQuoteRequest)src;
35          Object[] args = new Object[2];
36          args[0] = request.getCustomerRequest().getCustomer().getName();
37          args[1] = new Integer(request.getCustomerRequest().getCustomer().getSsn());
38          return args;
39      }
40  
41  }