Created
June 18, 2018 10:26
-
-
Save oludouglas/34545243e8f06f4e016bbcb984cffa09 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package test; | |
import java.rmi.RemoteException; | |
import java.util.Calendar; | |
import java.util.HashMap; | |
import java.util.Map; | |
import javax.xml.rpc.Stub; | |
import com.neptunesoftware.beans.Transaction; | |
import com.neptunesoftware.supernova.ws.client.AccountWebServiceEndPointPort_Impl; | |
import com.neptunesoftware.supernova.ws.client.AccountWebService_Stub; | |
import com.neptunesoftware.supernova.ws.client.FundsTransferWebServiceEndPointPort_Impl; | |
import com.neptunesoftware.supernova.ws.client.FundsTransferWebService_Stub; | |
import com.neptunesoftware.supernova.ws.client.TransactionsWebServiceEndPointPort_Impl; | |
import com.neptunesoftware.supernova.ws.client.TransactionsWebService_Stub; | |
import com.neptunesoftware.supernova.ws.client.TxnProcessWebServiceEndPointPort_Impl; | |
import com.neptunesoftware.supernova.ws.client.TxnProcessWebService_Stub; | |
import com.neptunesoftware.supernova.ws.common.XAPIException; | |
import com.neptunesoftware.supernova.ws.common.XAPIRequestBaseObject; | |
import com.neptunesoftware.supernova.ws.server.account.data.AccountBalanceRequest; | |
import com.neptunesoftware.supernova.ws.server.transaction.data.DepositTxnOutputData; | |
import com.neptunesoftware.supernova.ws.server.transaction.data.GLTransferRequest; | |
import com.neptunesoftware.supernova.ws.server.transaction.data.TransactionInquiryRequest; | |
import com.neptunesoftware.supernova.ws.server.transaction.data.TxnResponseOutputData; | |
import com.neptunesoftware.supernova.ws.server.transfer.data.FundsTransferRequestData; | |
import com.neptunesoftware.supernova.ws.server.txnprocess.data.XAPIBaseTxnRequestData; | |
import prc.MobileControl; | |
import util.RubiLog; | |
public class MainClass { | |
public static AccountWebService_Stub accountEndPoint[] = null; | |
public static TransactionsWebService_Stub transactionsEndPoint[] = null; | |
public static FundsTransferWebService_Stub fundsTransferEndPoint[] = null; | |
public static TxnProcessWebService_Stub txnProcessEndpoint[] = null; | |
public static final int MAX_JDBC_CONS = 1, conIndex = 0; | |
public static String RMI_URL = "http://192.168.2.222:8001/supernovaws/"; | |
public static final Map<String, String> CTRL_PARAM_MAP = new HashMap<>(); | |
static { | |
CTRL_PARAM_MAP.put("account-web-service", "AccountWebServiceBean"); | |
CTRL_PARAM_MAP.put("transaction-web-service", "TransactionsWebServiceBean"); | |
CTRL_PARAM_MAP.put("fundstransfer-web-service", "FundsTransferWebServiceBean"); | |
CTRL_PARAM_MAP.put("txnprocess-web-service", "TxnProcessWebServiceBean"); | |
} | |
public static void main(String[] args) { | |
// TODO Auto-generated method stub | |
accountEndPoint = new AccountWebService_Stub[MAX_JDBC_CONS]; | |
transactionsEndPoint = new TransactionsWebService_Stub[MAX_JDBC_CONS]; | |
fundsTransferEndPoint = new FundsTransferWebService_Stub[MAX_JDBC_CONS]; | |
txnProcessEndpoint = new TxnProcessWebService_Stub[MAX_JDBC_CONS]; | |
accountEndPoint[conIndex] = (AccountWebService_Stub) getPort("account-web-service"); | |
transactionsEndPoint[conIndex] = (TransactionsWebService_Stub) getPort("transaction-web-service"); | |
fundsTransferEndPoint[conIndex] = (FundsTransferWebService_Stub) getPort("fundstransfer-web-service"); | |
txnProcessEndpoint[conIndex] = (TxnProcessWebService_Stub) getPort("txnprocess-web-service"); | |
} | |
private XAPIRequestBaseObject getBaseRequest(XAPIRequestBaseObject requestData) { | |
requestData.setChannelId(13L); | |
requestData.setChannelCode("MBANK"); | |
requestData.setUserLoginId("SYSTEM"); | |
requestData.setOriginatorUserId(-99L); | |
requestData.setUserLoginId("SYSTEM"); | |
requestData.setUserId(-99L); | |
requestData.setTransmissionTime(Calendar.getInstance().getTimeInMillis()); | |
requestData.setTerminalNumber("MBANK"); | |
requestData.setReference(String.valueOf(System.currentTimeMillis())); | |
requestData.setCurrBUId(-99l); | |
return requestData; | |
} | |
private Object queryAccountBalance(String acctNo) { | |
AccountBalanceRequest accountBalanceRequest = new AccountBalanceRequest(); | |
accountBalanceRequest = (AccountBalanceRequest) getBaseRequest(accountBalanceRequest); | |
accountBalanceRequest.setAccountNumber(acctNo); | |
try { | |
return MobileControl.accountEndPoint[conIndex].findAccountBalance(accountBalanceRequest); | |
} catch (RemoteException | XAPIException e) { | |
RubiLog.getLogger().error(e); | |
return e; | |
} | |
} | |
private DepositTxnOutputData[] queryAccountStatement(String acctNo) { | |
TransactionInquiryRequest request = new TransactionInquiryRequest(); | |
request = (TransactionInquiryRequest) getBaseRequest(request); | |
request.setAccountNumber(acctNo); | |
request.setTransmissionTime(System.currentTimeMillis()); | |
request.setTxnJournalId(11L); | |
try { | |
return MobileControl.transactionsEndPoint[conIndex].findDepositMiniStatement(request) | |
.getDepositTxnOutputData(); | |
} catch (RemoteException | XAPIException e) { | |
RubiLog.getLogger().error(e); | |
} | |
return null; | |
} | |
private Object postDepositToGLTransfer(Transaction txnMapper) { | |
try { | |
XAPIBaseTxnRequestData requestData = new XAPIBaseTxnRequestData(); | |
requestData = (XAPIBaseTxnRequestData) getBaseRequest(requestData); | |
requestData.setAcctNo(txnMapper.getAccountNumber1()); | |
requestData.setContraAcctNo(txnMapper.getAccountNumber2()); | |
requestData.setTxnDescription(txnMapper.getTxnNarration()); | |
requestData.setTxnReference(txnMapper.getReference()); | |
requestData.setReference(txnMapper.getReference()); | |
requestData.setTxnAmount(txnMapper.getTxnAmount()); | |
requestData.setTxnCurrencyCode(txnMapper.getCurrency()); | |
TxnResponseOutputData response = MobileControl.txnProcessEndpoint[conIndex] | |
.postDepositToGLAccountTransfer(requestData); | |
txnMapper.setXapiRespCode(response.getResponseCode()); | |
return response; | |
} catch (Exception ex) { | |
RubiLog.getLogger().error(ex); | |
return ex; | |
} | |
} | |
private Object postGLToDepositTransfer(Transaction txnMapper) { | |
try { | |
XAPIBaseTxnRequestData requestData = new XAPIBaseTxnRequestData(); | |
requestData = (XAPIBaseTxnRequestData) getBaseRequest(requestData); | |
requestData.setAcctNo(txnMapper.getAccountNumber1()); | |
requestData.setContraAcctNo(txnMapper.getAccountNumber2()); | |
requestData.setTxnDescription(txnMapper.getTxnNarration()); | |
requestData.setTxnAmount(txnMapper.getTxnAmount()); | |
requestData.setTxnCurrencyCode(txnMapper.getCurrency()); | |
requestData.setTxnReference(txnMapper.getReference()); | |
requestData.setReference(txnMapper.getReference()); | |
TxnResponseOutputData response = MobileControl.txnProcessEndpoint[conIndex] | |
.postGLToDepositAccountTransfer(requestData); | |
txnMapper.setXapiRespCode(response.getResponseCode()); | |
return response; | |
} catch (Exception ex) { | |
RubiLog.getLogger().error(ex); | |
return ex; | |
} | |
} | |
private Object postGLToGLTransfer(Transaction ctsTran) { | |
try { | |
GLTransferRequest glTransferRequest = (GLTransferRequest) getBaseRequest(new GLTransferRequest()); | |
glTransferRequest.setFromGLAccountNumber(ctsTran.getAccountNumber1()); | |
glTransferRequest.setToGLAccountNumber(ctsTran.getAccountNumber2()); | |
glTransferRequest.setTransactionAmount(ctsTran.getTxnAmount()); | |
glTransferRequest.setAmount(ctsTran.getTxnAmount()); | |
glTransferRequest.setTransactionCurrencyCode(ctsTran.getCurrency()); | |
glTransferRequest.setTransmissionTime(System.currentTimeMillis()); | |
glTransferRequest.setTxnDescription(ctsTran.getTxnNarration()); | |
glTransferRequest.setReference(ctsTran.getReference()); | |
return MobileControl.transactionsEndPoint[conIndex].postGLtoGLXfer(glTransferRequest); | |
} catch (Exception ex) { | |
RubiLog.getLogger().error(ex); | |
return ex; | |
} | |
} | |
private Object postDeposiToDepositAccountTransfer(Transaction ctsTran) { | |
try { | |
FundsTransferRequestData transferRequest = new FundsTransferRequestData(); | |
transferRequest = (FundsTransferRequestData) getBaseRequest(transferRequest); | |
Calendar cal = Calendar.getInstance(); | |
transferRequest.setTransmissionTime(cal.getTimeInMillis()); | |
transferRequest.setFromAccountNumber(ctsTran.getAccountNumber1()); | |
transferRequest.setToAccountNumber(ctsTran.getAccountNumber2()); | |
transferRequest.setTxnDescription(ctsTran.getTxnNarration()); | |
transferRequest.setAcquiringInstitutionCode(""); | |
transferRequest.setTransactionAmount(ctsTran.getTxnAmount()); | |
transferRequest.setAmount(ctsTran.getTxnAmount()); | |
transferRequest.setFromCurrencyCode(ctsTran.getCurrency()); | |
transferRequest.setToCurrencyCode(ctsTran.getCurrency()); | |
transferRequest.setForwardingInstitutionCode(""); | |
transferRequest.setTrack2Data(String.valueOf(System.currentTimeMillis())); | |
transferRequest.setRetrievalReferenceNumber(ctsTran.getReference()); | |
transferRequest.setLocalTransactionTime(cal); | |
transferRequest.setReference(ctsTran.getReference()); | |
return MobileControl.fundsTransferEndPoint[conIndex].internalDepositAccountTransfer(transferRequest); | |
} catch (RemoteException | XAPIException ex) { | |
RubiLog.getLogger().error(ex); | |
return ex; | |
} | |
} | |
@SuppressWarnings("deprecation") | |
public static synchronized Stub getPort(String param) { | |
Stub stub = null; | |
try { | |
switch (param) { | |
case "account-web-service": | |
stub = (Stub) (new AccountWebServiceEndPointPort_Impl().getAccountWebServiceSoapPort("proxy_user", | |
"proxy_password")); | |
break; | |
case "transaction-web-service": | |
stub = (Stub) (new TransactionsWebServiceEndPointPort_Impl() | |
.getTransactionsWebServiceSoapPort("proxy_user", "proxy_password")); | |
break; | |
case "fundstransfer-web-service": | |
stub = (Stub) (new FundsTransferWebServiceEndPointPort_Impl() | |
.getFundsTransferWebServiceSoapPort("proxy_user", "proxy_password")); | |
break; | |
case "txnprocess-web-service": | |
stub = (Stub) (new TxnProcessWebServiceEndPointPort_Impl().getTxnProcessWebServiceSoapPort("proxy_user", | |
"proxy_password")); | |
break; | |
default: | |
stub = (Stub) (new AccountWebServiceEndPointPort_Impl().getAccountWebServiceSoapPort("proxy_user", | |
"proxy_password")); | |
break; | |
} | |
stub._setProperty(javax.xml.rpc.Stub.ENDPOINT_ADDRESS_PROPERTY, RMI_URL + CTRL_PARAM_MAP.get(param)); | |
} catch (Exception e) { | |
RubiLog.getLogger().error(e); | |
} | |
return stub; | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment