修改逻辑

This commit is contained in:
junj2.liang 2022-09-08 22:14:11 +08:00
parent 90a45cedd7
commit 5372708b19
2 changed files with 57 additions and 11 deletions

View File

@ -1,7 +1,6 @@
package com.sunyard.sge.database;
import com.sunyard.SydApiException;
import com.sunyard.sge.log.LogFactory;
import java.util.ArrayList;
import java.util.Arrays;
@ -17,9 +16,6 @@ import static com.sunyard.sge.database.SydApiConfig.BATCH_SIZE;
* 长连接的真正执行过程转发到长连接线程池中执行
*/
public class SydApiLongLinkWrap implements SydApi {
static {
LogFactory.createLogger("./logs", 0);
}
private SydApiBuilder builder;
@ -84,28 +80,78 @@ public class SydApiLongLinkWrap implements SydApi {
@Override
public byte[] SYD_SM4_LongData(int iKeyIndex, byte[] pcData, int iPkgNum, int iFlag) {
return new byte[0];
FutureTask<byte[]> task = builder.getLongLinkWorks().fTask(new Callable<byte[]>() {
@Override
public byte[] call() throws Exception {
return builder.get().SYD_SM4_LongData(iKeyIndex, pcData, iPkgNum, iFlag);
}
});
try {
return task.get();
} catch (Exception e) {
throw new SydApiException("并行任务执行失败", 0xC101, e);
}
}
@Override
public LongDataReturn<String, String> SYD_SM4Mac_LongData(int iKeyIndex, byte[] pcData, int iPkgNum, String pcProcData) {
return null;
FutureTask<LongDataReturn<String, String>> task = builder.getLongLinkWorks().fTask(new Callable<LongDataReturn<String, String>>() {
@Override
public LongDataReturn<String, String> call() throws Exception {
return builder.get().SYD_SM4Mac_LongData(iKeyIndex, pcData, iPkgNum, pcProcData);
}
});
try {
return task.get();
} catch (Exception e) {
throw new SydApiException("并行任务执行失败", 0xC101, e);
}
}
@Override
public LongDataReturn<String, Boolean> SYD_SM4Mac_LongData(int iKeyIndex, byte[] pcData, int iPkgNum, String pcProcData, String pcMac) {
return null;
FutureTask<LongDataReturn<String, Boolean>> task = builder.getLongLinkWorks().fTask(new Callable<LongDataReturn<String, Boolean>>() {
@Override
public LongDataReturn<String, Boolean> call() throws Exception {
return builder.get().SYD_SM4Mac_LongData(iKeyIndex, pcData, iPkgNum, pcProcData, pcMac);
}
});
try {
return task.get();
} catch (Exception e) {
throw new SydApiException("并行任务执行失败", 0xC101, e);
}
}
@Override
public String SYD_SM4Mac_ShortData(int iKeyIndex, byte[] pcData) {
return null;
FutureTask<String> task = builder.getLongLinkWorks().fTask(new Callable<String>() {
@Override
public String call() throws Exception {
return builder.get().SYD_SM4Mac_ShortData(iKeyIndex, pcData);
}
});
try {
return task.get();
} catch (Exception e) {
throw new SydApiException("并行任务执行失败", 0xC101, e);
}
}
@Override
public boolean SYD_SM4Mac_ShortData(int iKeyIndex, byte[] pcData, String pcMac) {
return false;
FutureTask<Boolean> task = builder.getLongLinkWorks().fTask(new Callable<Boolean>() {
@Override
public Boolean call() throws Exception {
return builder.get().SYD_SM4Mac_ShortData(iKeyIndex, pcData, pcMac);
}
});
try {
return task.get();
} catch (Exception e) {
throw new SydApiException("并行任务执行失败", 0xC101, e);
}
}
@Override

View File

@ -18,8 +18,8 @@ public class Sample
// 通常单例就够了
SydApiBuilder builder = new SydApiBuilder(
new String[]{ "192.168.1.129" },
new int[]{ 8889 },
new String[]{ "192.168.1.129","172.16.18.59" },
new int[]{ 8889,8889 },
10,
15
);