📄 cb8583config.java
字号:
package com.szzt.trade.zsbank;
import com.szzt.controller.context.RequestContext;
import com.szzt.controller.context.HttpRequestContext;
import com.szzt.common.xml.XmlProcessor;
import org.jdom.Document;
import org.jdom.Element;
import org.apache.log4j.Logger;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.util.HashMap;
import java.util.Set;
import java.util.Iterator;
import com.szzt.common.SysFunction;
import com.szzt.trade.tradestruct.*;
import com.szzt.common.*;
public class CB8583Config {
private static final String SERVICE_NAME="boc";
public String hostIP = null;
public int hostPort = -1;
public int connectTimeout = 60;
public String acqInstID = null;
public String termID = null;
public String identifyCode = null;
public Map tradeList = new HashMap();
protected static CB8583Config singletonInstance = null;
public CB8583Config() {
loadTradeConfig();
}
public static CB8583Config getInstance() {
if(singletonInstance == null){
singletonInstance = new CB8583Config();
}
return singletonInstance;
}
public void loadTradeConfig()
{
clear();
Document xmlDoc = null;
Element rootElement = null;
List serviceElements = null;
Element serviceElement = null;
List tradeChildElements = null;
Element tradeChildElement = null;
List tradeParamChildElements = null;
Element tradeParamChildElement = null;
List nextTradeChildElements = null;
Element nextTradeChildElement = null;
try{
xmlDoc = XmlProcessor.readDocument(SysFunction.getRootPath()+Constants.TRADE_CONFIG_FILE);
rootElement = xmlDoc.getRootElement();
serviceElements = rootElement.getChildren("tradeservice");
for(int i = 0; i < serviceElements.size(); i++)
{
serviceElement = null;
serviceElement = (Element)serviceElements.get(i);
if(serviceElement.getAttributeValue("name").compareToIgnoreCase(SERVICE_NAME) == 0)
{
if(serviceElement.hasChildren()){
tradeChildElements = serviceElement.getChildren();
for(int j = 0; j < tradeChildElements.size(); j++){
tradeChildElement = (Element)tradeChildElements.get(j);
if(tradeChildElement.getName().equals("parameter")){
String paramName = tradeChildElement.getAttributeValue("name");
if(paramName!=null && paramName.trim().equals("acqInstID")){
acqInstID = tradeChildElement.getAttributeValue("value").trim();
}
else if(paramName!=null && paramName.trim().equals("termID")){
termID = tradeChildElement.getAttributeValue("value").trim();
}
else if(paramName!=null && paramName.trim().equals("identifyCode")){
identifyCode = tradeChildElement.getAttributeValue("value").trim();
}
}
else if (tradeChildElement.getName().equals("trade")) {
TradeParam tradeParam = new TradeParam();
tradeParam.tradeCode = tradeChildElement.getAttributeValue("code");
tradeParam.tradeToCode = tradeChildElement.getAttributeValue("tocode");
tradeParam.tradeName = tradeChildElement.getAttributeValue("name");
tradeParam.tradeType = tradeChildElement.getAttributeValue("type");
if(tradeChildElement.hasChildren()){
tradeParamChildElements = tradeChildElement.getChildren();
for(int k=0; k<tradeParamChildElements.size(); k++){
tradeParamChildElement = (Element)tradeParamChildElements.get(k);
String tradeParamChildName = tradeParamChildElement.getName();
if(tradeParamChildName.equals("parameter")){
tradeParam.paramList.put(tradeParamChildElement.getAttributeValue("name").trim(),tradeParamChildElement.getAttributeValue("value").trim());
}
else if(tradeParamChildName.equals("next")){
SerialTradeParam nextTrade = new SerialTradeParam();
nextTrade.from = tradeParamChildElement.getAttributeValue("from").trim();
nextTrade.validValue = tradeParamChildElement.getAttributeValue("valid").trim();
nextTrade.maxTradeNum = Integer.parseInt(tradeParamChildElement.getAttributeValue("maxtradenum").trim());
if(tradeParamChildElement.hasChildren()){
nextTradeChildElements = tradeParamChildElement.getChildren();
for(int l=0; l<nextTradeChildElements.size(); l++){
nextTradeChildElement = (Element)nextTradeChildElements.get(l);
SerialTradeParamHelper nextTradeHelper = new SerialTradeParamHelper();
nextTradeHelper.from = nextTradeChildElement.getAttributeValue("from").trim();
nextTradeHelper.to = nextTradeChildElement.getAttributeValue("to").trim();
nextTrade.paramList.add(nextTradeHelper);
}
}
tradeParam.serialTrade = nextTrade;
}
}
}
tradeList.put(tradeParam.tradeCode,tradeParam);
}
}
}
break;
}
}
}finally{
if (serviceElements != null)
serviceElements.clear();
if (tradeChildElements != null)
tradeChildElements.clear();
if (tradeParamChildElements != null)
tradeParamChildElements.clear();
if (nextTradeChildElements != null)
nextTradeChildElements.clear();
nextTradeChildElement = null;
nextTradeChildElements = null;
tradeParamChildElement = null;
tradeParamChildElements = null;
tradeChildElement = null;
tradeChildElements = null;
serviceElement = null;
serviceElements = null;
rootElement = null;
xmlDoc = null;
}
}
public TradeParam getTradeParam(String tradeCode){
if (tradeList.get(tradeCode) == null)
return null;
TradeParam tradeParam = (TradeParam)tradeList.get(tradeCode);
if (tradeParam.paramList == null)
return null;
return tradeParam;
}
public void clear(){
if(tradeList != null){
Iterator keyList = tradeList.keySet().iterator();
while(keyList.hasNext()){
String key = (String)keyList.next();
((TradeParam)tradeList.get(key)).clear();
}
tradeList.clear();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -