同步获取响应数据

This commit is contained in:
Guoqs
2024-08-01 15:13:14 +08:00
parent 0ad35c9300
commit 49ad9419fe
10 changed files with 492 additions and 104 deletions

View File

@@ -114,8 +114,8 @@ public enum YKCFrameTypeCode {
this.value = value;
}
private int code;
private String value;
private int code; // 帧类型code
private String value; // 帧类型名称
public int getCode() {
return code;
@@ -129,15 +129,6 @@ public enum YKCFrameTypeCode {
return BytesUtil.intToBytesLittle(code, 1);
}
public static YKCFrameTypeCode fromCode(byte code) {
for (YKCFrameTypeCode item : YKCFrameTypeCode.values()) {
if (item.getCode() == code) {
return item;
}
}
return null;
}
public static String getFrameTypeStr(String frameType) {
for (YKCFrameTypeCode item : YKCFrameTypeCode.values()) {
String str = YKCUtils.frameType2Str(item.getBytes());
@@ -281,6 +272,7 @@ public enum YKCFrameTypeCode {
REMOTE_ACCOUNT_BALANCE_UPDATE(REMOTE_ACCOUNT_BALANCE_UPDATE_CODE.getCode(), REMOTE_ACCOUNT_BALANCE_UPDATE_ANSWER_CODE.getCode()),
;
// 请求帧类型
private int requestFrameType;
@@ -307,36 +299,81 @@ public enum YKCFrameTypeCode {
return BytesUtil.intToBytesLittle(requestFrameType, 1);
}
public byte[] getResponseFrameBytes() {
return BytesUtil.intToBytesLittle(responseFrameType, 1);
}
PileAnswersRelation(int requestFrameType, int responseFrameType) {
this.requestFrameType = requestFrameType;
this.responseFrameType = responseFrameType;
}
// 根据请求帧类型 获取应答帧类型 int类型
public static int getResponseFrameTypeByRequestFrameType(int requestFrameType) {
for (PileAnswersRelation relation : PileAnswersRelation.values()) {
if (relation.getRequestFrameType() == requestFrameType) {
return relation.getResponseFrameType();
}
}
return 0;
}
// public static int getResponseFrameTypeByRequestFrameType(int requestFrameType) {
// for (PileAnswersRelation relation : PileAnswersRelation.values()) {
// if (relation.getRequestFrameType() == requestFrameType) {
// return relation.getResponseFrameType();
// }
// }
// return 0;
// }
// 根据请求帧类型 获取应答帧类型 byte[]类型
public static byte[] getResponseFrameTypeBytes(byte[] requestFrameType) {
int frameType = BytesUtil.bytesToInt(requestFrameType);
return BytesUtil.intToBytes(getResponseFrameTypeByRequestFrameType(frameType), 1);
// public static byte[] getResponseFrameTypeBytes(byte[] requestFrameType) {
// int frameType = BytesUtil.bytesToInt(requestFrameType);
// return BytesUtil.intToBytes(getResponseFrameTypeByRequestFrameType(frameType), 1);
// }
/**
* 根据响应帧类型 查找对应的 请求帧类型
*/
public static String getRequestFrameType(String responseFrameType) {
for (PileAnswersRelation relation : PileAnswersRelation.values()) {
if (StringUtils.equals(responseFrameType, YKCUtils.frameType2Str(relation.getResponseFrameBytes()))) {
return YKCUtils.frameType2Str(relation.getRequestFrameBytes());
}
}
return null;
}
// 需要获取应答的帧类型
public static List<String> getRequestFrameTypeList() {
List<String> resultList = Lists.newArrayList();
for (PileAnswersRelation relation : PileAnswersRelation.values()) {
resultList.add(YKCUtils.frameType2Str(relation.getRequestFrameBytes()));
}
return resultList;
// 请求帧类型集合 需要获取应答的帧类型
// public static List<String> getRequestFrameTypeList() {
// List<String> requestList = Lists.newArrayList();
// for (PileAnswersRelation relation : PileAnswersRelation.values()) {
// requestList.add(YKCUtils.frameType2Str(relation.getRequestFrameBytes()));
// }
// return requestList;
// }
// 根据应答帧类型获取请求帧类型 byte[]类型
// public static byte[] getRequestFrameTypeBytes(byte[] responseFrameType) {
// int frameType = BytesUtil.bytesToInt(responseFrameType);
// return BytesUtil.intToBytes(getRequestFrameTypeByResponseFrameType(frameType), 1);
// }
public static void main(String[] args) {
System.out.println(BytesUtil.intToBytes(0));
}
// 根据应答帧类型获取请求帧类型 int类型
// public static int getRequestFrameTypeByResponseFrameType(int requestFrameType) {
// for (PileAnswersRelation relation : PileAnswersRelation.values()) {
// if (relation.getRequestFrameType() == requestFrameType) {
// return relation.getResponseFrameType();
// }
// }
// return 0;
// }
// 应答帧类型集合
// public static List<String> getResponseFrameTypeList() {
// List<String> responseList = Lists.newArrayList();
// for (PileAnswersRelation relation : PileAnswersRelation.values()) {
// responseList.add(YKCUtils.frameType2Str(relation.getResponseFrameBytes()));
// }
// return responseList;
// }
}
}