add DoipMessage to JsonObject conversion in JSONTool, to deal with the ret of engine is DoipMessage case

This commit is contained in:
haoeliu@foxmail.com 2023-02-18 20:02:29 +08:00
parent 098854fd46
commit 838b2e77c8
3 changed files with 5 additions and 4 deletions

View File

@ -2,6 +2,8 @@ package org.bdware.sc.engine;
import com.google.gson.*; import com.google.gson.*;
import jdk.nashorn.internal.runtime.Context; import jdk.nashorn.internal.runtime.Context;
import org.bdware.doip.codec.doipMessage.DoipMessage;
import org.bdware.sc.util.JsonUtil;
import wrp.jdk.nashorn.api.scripting.ScriptObjectMirror; import wrp.jdk.nashorn.api.scripting.ScriptObjectMirror;
import wrp.jdk.nashorn.internal.objects.NativeArray; import wrp.jdk.nashorn.internal.objects.NativeArray;
import wrp.jdk.nashorn.internal.runtime.PropertyMap; import wrp.jdk.nashorn.internal.runtime.PropertyMap;
@ -146,7 +148,9 @@ public class JSONTool {
return jsonObject; return jsonObject;
} else if (obj.getClass() == jdk.internal.dynalink.beans.StaticClass.class) { } else if (obj.getClass() == jdk.internal.dynalink.beans.StaticClass.class) {
return JsonNull.INSTANCE; return JsonNull.INSTANCE;
} else if (obj instanceof Number) { } else if (obj.getClass() == DoipMessage.class) {
return JsonUtil.fromJson(JsonUtil.toJson(obj), JsonObject.class);
}else if (obj instanceof Number) {
return new JsonPrimitive((Number) obj); return new JsonPrimitive((Number) obj);
} else if (obj instanceof String) { } else if (obj instanceof String) {

View File

@ -5,7 +5,6 @@ import com.google.gson.JsonObject;
import com.google.gson.JsonParser; import com.google.gson.JsonParser;
import org.bdware.doip.codec.doipMessage.DoipMessage; import org.bdware.doip.codec.doipMessage.DoipMessage;
import org.bdware.doip.codec.doipMessage.DoipMessageFactory; import org.bdware.doip.codec.doipMessage.DoipMessageFactory;
import org.bdware.doip.codec.doipMessage.DoipResponseCode;
import org.bdware.doip.codec.operations.BasicOperations; import org.bdware.doip.codec.operations.BasicOperations;
import org.bdware.sc.JSEngine; import org.bdware.sc.JSEngine;
import org.bdware.sc.bean.ContractRequest; import org.bdware.sc.bean.ContractRequest;

View File

@ -1,7 +1,6 @@
package org.bdware.sc.handler; package org.bdware.sc.handler;
import com.google.gson.Gson; import com.google.gson.Gson;
import com.google.gson.JsonElement;
import io.netty.channel.ChannelHandlerContext; import io.netty.channel.ChannelHandlerContext;
import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.Logger;
@ -12,7 +11,6 @@ import org.bdware.doip.endpoint.server.NettyServerHandler;
import org.bdware.doip.endpoint.server.RepositoryHandler; import org.bdware.doip.endpoint.server.RepositoryHandler;
import org.bdware.sc.ContractProcess; import org.bdware.sc.ContractProcess;
import org.bdware.sc.bean.ContractRequest; import org.bdware.sc.bean.ContractRequest;
import org.bdware.sc.engine.hook.DOOPBeforeExecHandler;
import org.bdware.sc.entity.DoipMessagePacker; import org.bdware.sc.entity.DoipMessagePacker;
import org.bdware.sc.node.FunctionNode; import org.bdware.sc.node.FunctionNode;
import org.bdware.sc.util.JsonUtil; import org.bdware.sc.util.JsonUtil;