lizhanwei
2020-02-18 ead127e532a8baf80955a6d479f5173aa2b01b8a
app/src/main/java/safeluck/drive/evaluation/platformMessage/utils/MessageManager.java
@@ -1,63 +1,34 @@
//package safeluck.drive.evaluation.platformMessage.utils;
//
//import com.safeluck.aykj.decoder.BitStateCoder;
//import com.safeluck.aykj.decoder.Int16Coder;
//import com.safeluck.aykj.utils.BitState;
//
//import safeluck.drive.evaluation.platformMessage.JK2019MessageBase;
//
///**
// * Created by zhouwei on 2016/12/7.
// */
//
//public final class MessageManager {
//
//    public static JK2019MessageBase get(String cmd) {
//        String head = cmd.substring(4,8);
//        String classname = "aykj.message.jt808_2016.server.JTMessage"+head;
//        if("0900".equals(head)||"8900".equals(head))
//            classname = "aykj.message.jt808_2016.JTMessage"+head;
//        Class c = null;
//        try {
//            c = Class.forName(classname);
//        } catch (ClassNotFoundException e) {
//            classname = "aykj.message.jt808_2016.device.JTMessage"+head;
//            try {
//                c = Class.forName(classname);
//            } catch (ClassNotFoundException e1) {
////                c = JTMessageUnknown.class;
//            }
//        }
//        try {
//
//            JK2019MessageBase ret = (JK2019MessageBase)c.newInstance();
//            ret.parse(cmd);
//            if(ret.messageId==0x8900||ret.messageId==0x0900){
////                JTMessageExtend ext = (JTMessageExtend)ret;
//                if(ret.messageId==0x8900)
////                    classname = "aykj.message.jt808_2016.server.ExtendMessage"+ String.format("%04X", ext.extend_id);
//                else
////                    classname = "aykj.message.jt808_2016.device.ExtendMessage"+ String.format("%04X", ext.extend_id);
//                try {
//                    c = Class.forName(classname);
//                } catch (ClassNotFoundException e) {
//                    classname = "aykj.message.jt808_2016.device.JTMessage"+head;
//                    try {
//                        c = Class.forName(classname);
//                    } catch (ClassNotFoundException e1) {
////                        c = JTMessageUnknown.class;
//                    }
//                }
//
//                JK2019MessageBase ext_ret = (JK2019MessageBase)c.newInstance();
//                ext_ret.parse(cmd);
//                ret = ext_ret;
//            }
//            return ret;
//        } catch (InstantiationException e) {
//            throw new RuntimeException(e);
//        } catch (IllegalAccessException e) {
//            throw new RuntimeException(e);
//        }
//    }
//}
package safeluck.drive.evaluation.platformMessage.utils;
import com.safeluck.aykj.decoder.BitStateCoder;
import com.safeluck.aykj.decoder.Int16Coder;
import com.safeluck.aykj.utils.BitState;
import safeluck.drive.evaluation.platformMessage.JK2019MessageBase;
public final class MessageManager {
    public static JK2019MessageBase get(String cmd) {
        String head = cmd.substring(4,8);
        String classname = "safeluck.drive.evaluation.platformMessage.JKMessage"+head;
        Class c = null;
        try {
            c = Class.forName(classname);
        } catch (ClassNotFoundException e) {
        }
        try {
            JK2019MessageBase ret = (JK2019MessageBase)c.newInstance();
            ret.parse(cmd);
            return ret;
        } catch (InstantiationException e) {
            throw new RuntimeException(e);
        } catch (IllegalAccessException e) {
            throw new RuntimeException(e);
        }
    }
}