using Edge.Core.Parser.BinaryParser; using Edge.Core.Parser.BinaryParser.MessageEntity; using Edge.Core.Parser.BinaryParser.Util; using ShengJu_CUT100_DES.MessageEntity.Incoming; using System; namespace ShengJu_CUT100_DES.MessageEntity { /// /// public class MessageTemplateLookup : IMessageTemplateLookup { /// /// /// /// ADR CTRL trans_Number trans_Length trans_data /// public MessageTemplateBase GetMessageTemplateByRawBytes(byte[] bytes) { if (bytes[0] == 5 && bytes[3] == 0) return new GenericSuccessResponse(); else if (bytes[0] == 6 && bytes[3] != 0) return new GenericFailureResponse(); else if (bytes[2] == 0x15) return new ReadModuleInfoResponse(); else if (bytes[2] == 0x16) return new ActivateATypeCardResponse(); else if (bytes[2] == 0xB2) return new ReadAppFileResponse(); else if (bytes[2] == 0xB8) return new ReadAppDirsResponse(); // return new Wayne_Pump_Dart.MessageEntity.Incoming.EOT(); //else if (bytes[2] == 0x01 && bytes[3] == 1 && bytes[4] == 0x00) // return new Wayne_Pump_Dart.MessageEntity.Incoming.PumpStatus_ResponseOrEvent(); throw new ArgumentException("Could not find any msg template for input bytes: 0x" + bytes.ToHexLogString()); } } }