修改短链接、修改日志
This commit is contained in:
parent
983459f816
commit
719388494b
@ -14,7 +14,7 @@ import java.util.List;
|
||||
* 上海黄金交易所 - 数据库加密方案
|
||||
*/
|
||||
public class SydApi4Database implements SydApi {
|
||||
|
||||
static Logger log = LogFactory.getLogger();
|
||||
private SydApi4j[] hsms = null;
|
||||
private boolean isShortLinkMode = false;
|
||||
|
||||
@ -28,7 +28,6 @@ public class SydApi4Database implements SydApi {
|
||||
|
||||
@Override
|
||||
public SydApi SYD_Short_Connect_Ex(String[] pcIpList, int[] iPortList, int iConnectTimeOut, int allDealTimeOut) {
|
||||
Logger log = LogFactory.getLogger();
|
||||
if (LogFactory.iLogLevel==3) {
|
||||
log.debug("SYD_Connect_Ex方法接收参数:pcIpList:{},iPortList:{},iConnectTimeOut:{},iDealTimeOut:{}", Arrays.toString(pcIpList), Arrays.toString(iPortList), iConnectTimeOut, allDealTimeOut);
|
||||
}
|
||||
@ -39,18 +38,26 @@ public class SydApi4Database implements SydApi {
|
||||
|
||||
SydApi4j[] apis = new SydApi4j[pcIpList.length];
|
||||
int iDealTimeOut = allDealTimeOut / pcIpList.length;
|
||||
boolean connected = false;
|
||||
for (int i = 0; i < pcIpList.length ; i++) {
|
||||
|
||||
try {
|
||||
|
||||
apis[i] = (SydApi4j) new SydApi4j().connect(pcIpList[i], iPortList[i], null, iConnectTimeOut, iDealTimeOut);
|
||||
|
||||
}catch ( Exception e) {
|
||||
connected = true;
|
||||
}
|
||||
catch ( Exception e) {
|
||||
// 忽略错误
|
||||
log.error("网络连接错误 {} {} - 忽略",pcIpList[i], iPortList[i]);
|
||||
}
|
||||
|
||||
}
|
||||
if( ! connected ) {
|
||||
// TODO
|
||||
throw new SydApiException("连接错误",-1);
|
||||
}
|
||||
|
||||
|
||||
|
||||
hsms = apis;
|
||||
isShortLinkMode = true;
|
||||
@ -76,11 +83,12 @@ public class SydApi4Database implements SydApi {
|
||||
}
|
||||
}
|
||||
// 配合链接池,不再需要释放。
|
||||
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public String SYD_SM3_Hash_ShortData(byte[] pcData) {
|
||||
Logger log = LogFactory.getLogger();
|
||||
if (LogFactory.iLogLevel==3) {
|
||||
log.debug("SYD_SM3_Hash_ShortData方法接收参数:pcData:{}", Arrays.toString(pcData));
|
||||
}
|
||||
@ -90,6 +98,11 @@ public class SydApi4Database implements SydApi {
|
||||
|
||||
SydApiException le = null;
|
||||
for (SydApi4j api : this.hsms) {
|
||||
|
||||
if ( null == api ) {
|
||||
continue;
|
||||
}
|
||||
|
||||
try {
|
||||
byte[] hash = api.SYD_SM3_LongData(pcData, null, 0);
|
||||
log.debug("api.SYD_SM3_LongData方法返回值:{}",Arrays.toString(hash));
|
||||
@ -107,7 +120,6 @@ public class SydApi4Database implements SydApi {
|
||||
|
||||
@Override
|
||||
public LongDataReturn<String, String> SYD_SM3_Hash_LongData(byte[] pcData, int iPkgNum, String pcProcData) {
|
||||
Logger log = LogFactory.getLogger();
|
||||
if (LogFactory.iLogLevel==3) {
|
||||
log.debug("SYD_SM3_Hash_LongData方法接收参数:pcData:{},iPkgNum:{},pcProcData:{}", Arrays.toString(pcData), iPkgNum, pcProcData);
|
||||
}
|
||||
@ -124,6 +136,9 @@ public class SydApi4Database implements SydApi {
|
||||
}
|
||||
SydApiException le = null;
|
||||
for (SydApi4j api : this.hsms) {
|
||||
if ( null == api ) {
|
||||
continue;
|
||||
}
|
||||
try {
|
||||
byte[] hash = api.SYD_SM3_LongData(pcData, procData, iPkgNum);
|
||||
log.debug("api.SYD_SM3_LongData方法返回值:{}",Arrays.toString(hash));
|
||||
@ -145,7 +160,6 @@ public class SydApi4Database implements SydApi {
|
||||
|
||||
@Override
|
||||
public byte[] SYD_SM4_ShortData(int iKeyIndex, byte[] pcData, int iFlag) {
|
||||
Logger log = LogFactory.getLogger();
|
||||
if (LogFactory.iLogLevel==3) {
|
||||
log.debug("SYD_SM4_ShortData方法接收参数:iKeyIndex:{},pcData:{},iFlag:{}", iKeyIndex, Arrays.toString(pcData), iFlag);
|
||||
}
|
||||
@ -159,8 +173,10 @@ public class SydApi4Database implements SydApi {
|
||||
String keyIndex = String.format("%08d", iKeyIndex);
|
||||
SydApiException le = null;
|
||||
for (SydApi4j api : this.hsms) {
|
||||
if ( null == api ) {
|
||||
continue;
|
||||
}
|
||||
try {
|
||||
|
||||
if (Consts.ECB_ENC == iFlag) {
|
||||
return api.SYMEncryptData(
|
||||
com.sunyard.SydApi.NALG_SM4,
|
||||
@ -187,7 +203,6 @@ public class SydApi4Database implements SydApi {
|
||||
|
||||
@Override
|
||||
public List<byte[]> SYD_SM4_BatchData(int[] iKeyIndex, List<byte[]> pcData, int iFlag) {
|
||||
Logger log = LogFactory.getLogger();
|
||||
if (LogFactory.iLogLevel==3) {
|
||||
log.debug("SYD_SM4_BatchData方法接收参数:iKeyIndex:{},pcData元素个数为:{},iFlag:{}", iKeyIndex, pcData.size(), iFlag);
|
||||
}
|
||||
@ -209,6 +224,9 @@ public class SydApi4Database implements SydApi {
|
||||
|
||||
SydApiException le = null;
|
||||
for (SydApi4j api : this.hsms) {
|
||||
if ( null == api ) {
|
||||
continue;
|
||||
}
|
||||
try {
|
||||
if (Consts.ECB_ENC == iFlag) {
|
||||
return api.SYMEncryptDecryptBatchData(8, 1, null, keys, 1, pcData);
|
||||
@ -229,7 +247,6 @@ public class SydApi4Database implements SydApi {
|
||||
|
||||
@Override
|
||||
public byte[] SYD_SM4_LongData(int iKeyIndex, byte[] pcData, int iPkgNum, int iFlag) {
|
||||
Logger log = LogFactory.getLogger();
|
||||
if (LogFactory.iLogLevel==3) {
|
||||
log.debug("SYD_SM4_LongData方法接收参数:iKeyIndex:{},pcData:{},iPkgNum:{},iFlag:{}", iKeyIndex, Arrays.toString(pcData), iPkgNum, iFlag);
|
||||
}
|
||||
@ -243,6 +260,9 @@ public class SydApi4Database implements SydApi {
|
||||
|
||||
SydApiException le = null;
|
||||
for (SydApi4j api : this.hsms) {
|
||||
if ( null == api ) {
|
||||
continue;
|
||||
}
|
||||
try {
|
||||
if (Consts.ECB_ENC == iFlag) {
|
||||
return api.SYD_SM4_LongData(
|
||||
@ -273,7 +293,6 @@ public class SydApi4Database implements SydApi {
|
||||
|
||||
@Override
|
||||
public String[] SYD_SM4Mac_BatchData(int[] iKeyIndex, List<byte[]> pcData) {
|
||||
Logger log = LogFactory.getLogger();
|
||||
if (LogFactory.iLogLevel==3) {
|
||||
log.debug("SYD_SM4Mac_BatchData:iKeyIndex:{},pcData元素个数为:{}", iKeyIndex, pcData.size());
|
||||
}
|
||||
@ -287,6 +306,9 @@ public class SydApi4Database implements SydApi {
|
||||
}
|
||||
SydApiException le = null;
|
||||
for (SydApi4j api : this.hsms) {
|
||||
if ( null == api ) {
|
||||
continue;
|
||||
}
|
||||
try {
|
||||
List<byte[]> list = api.SYMEncryptDecryptBatchData(8, 2, null, keys, 1, pcData);
|
||||
String[] ret = new String[list.size()];
|
||||
@ -311,7 +333,6 @@ public class SydApi4Database implements SydApi {
|
||||
|
||||
@Override
|
||||
public boolean[] SYD_SM4Mac_BatchData(int[] iKeyIndex, List<byte[]> pcData, String[] pcMac) {
|
||||
Logger log = LogFactory.getLogger();
|
||||
if (LogFactory.iLogLevel==3) {
|
||||
log.debug("SYD_SM4Mac_BatchData方法接收参数:iKeyIndex:{},pcData元素个数为:{},pcMac:{}", iKeyIndex, pcData.size(), Arrays.toString(pcMac));
|
||||
}
|
||||
@ -325,6 +346,9 @@ public class SydApi4Database implements SydApi {
|
||||
}
|
||||
SydApiException le = null;
|
||||
for (SydApi4j api : this.hsms) {
|
||||
if ( null == api ) {
|
||||
continue;
|
||||
}
|
||||
try {
|
||||
List<byte[]> list = api.SYMEncryptDecryptBatchData(8, 2, null, keys, 1, pcData);
|
||||
boolean[] ret = new boolean[list.size()];
|
||||
@ -349,7 +373,6 @@ public class SydApi4Database implements SydApi {
|
||||
|
||||
@Override
|
||||
public LongDataReturn<String, String> SYD_SM4Mac_LongData(int iKeyIndex, byte[] pcData, int iPkgNum, String pcProcData) {
|
||||
Logger log = LogFactory.getLogger();
|
||||
if (LogFactory.iLogLevel==3) {
|
||||
log.debug("SYD_SM4Mac_LongData方法接收参数:iKeyIndex:{},pcData:{},iPkgNum:{},pcProcData:{}", iKeyIndex, Arrays.toString(pcData), iPkgNum, pcProcData);
|
||||
}
|
||||
@ -368,6 +391,9 @@ public class SydApi4Database implements SydApi {
|
||||
|
||||
SydApiException le = null;
|
||||
for (SydApi4j api : this.hsms) {
|
||||
if ( null == api ) {
|
||||
continue;
|
||||
}
|
||||
try {
|
||||
byte[] ret = api.SYD_SM4_LongData(
|
||||
8,
|
||||
@ -400,7 +426,6 @@ public class SydApi4Database implements SydApi {
|
||||
|
||||
@Override
|
||||
public LongDataReturn<String, Boolean> SYD_SM4Mac_LongData(int iKeyIndex, byte[] pcData, int iPkgNum, String pcProcData, String pcMac) {
|
||||
Logger log = LogFactory.getLogger();
|
||||
if (LogFactory.iLogLevel==3) {
|
||||
log.debug("SYD_SM4Mac_LongData方法接收参数:iKeyIndex:{},pcData:{},iPkgNum:{},pcProcData:{}", iKeyIndex, Arrays.toString(pcData), iPkgNum, pcProcData, pcMac);
|
||||
}
|
||||
@ -417,7 +442,6 @@ public class SydApi4Database implements SydApi {
|
||||
|
||||
@Override
|
||||
public String SYD_SM4Mac_ShortData(int iKeyIndex, byte[] pcData) {
|
||||
Logger log = LogFactory.getLogger();
|
||||
if (LogFactory.iLogLevel==3) {
|
||||
log.debug("SYD_SM4Mac_ShortData方法接收参数:iKeyIndex:{},pcData:{},iFlag:{}", iKeyIndex, Arrays.toString(pcData));
|
||||
}
|
||||
@ -429,6 +453,9 @@ public class SydApi4Database implements SydApi {
|
||||
log.debug("\"SK\" + SYMUtil.genPrivateKeyMark方法返回值:{}",keyIndex);
|
||||
SydApiException le = null;
|
||||
for (SydApi4j api : this.hsms) {
|
||||
if ( null == api ) {
|
||||
continue;
|
||||
}
|
||||
try {
|
||||
|
||||
return api.SYD_SM4Mac_ShortData(keyIndex, pcData);
|
||||
@ -446,7 +473,6 @@ public class SydApi4Database implements SydApi {
|
||||
|
||||
@Override
|
||||
public boolean SYD_SM4Mac_ShortData(int iKeyIndex, byte[] pcData, String pcMac) {
|
||||
Logger log = LogFactory.getLogger();
|
||||
if (LogFactory.iLogLevel==3) {
|
||||
log.debug("SYD_SM4Mac_ShortData方法接收参数:{}", iKeyIndex, Arrays.toString(pcData), pcMac);
|
||||
}
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
package com.sunyard.sge.database.pool;
|
||||
|
||||
import com.sunyard.SydApiException;
|
||||
import com.sunyard.sge.database.SydApi;
|
||||
import com.sunyard.sge.database.SydApi4Database;
|
||||
import com.sunyard.sge.log.LogFactory;
|
||||
@ -41,6 +42,12 @@ public class SydApiPool extends ThreadBasedConnectPool<SydApi> {
|
||||
}
|
||||
}
|
||||
|
||||
if( ! connected ) {
|
||||
// TODO
|
||||
throw new SydApiException("连接错误",-1);
|
||||
}
|
||||
|
||||
|
||||
return new SydApi4Database( apis );
|
||||
}
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user