using LanTian_Pump_664_Or_886.MessageEntity;
using LanTian_Pump_664_Or_886.MessageEntity.Incoming;
using Edge.Core.Parser.BinaryParser;
using Edge.Core.Parser.BinaryParser.MessageEntity;
namespace LanTian_Pump_664_Or_886
{
///
///
public class MessageTemplateLookup : IMessageTemplateLookup
{
///
///
///
/// F5 01 An dd dd ... dd dd CmdByte XRL
///
public MessageTemplateBase GetMessageTemplateByRawBytes(byte[] bytes)
{
if (bytes[bytes.Length - 2] == 0xB2)
return new ChangePriceResponse();
else if (bytes[bytes.Length - 2] == 0xB6)
return new ReadPriceResponse();
else if (bytes[bytes.Length - 2] == 0xD2)
return new WriteCloseAheadValveThresholdResponse();
else if (bytes[bytes.Length - 2] == 0xD6)
return new ReadCloseAheadValveThresholdResponse();
else if (bytes[bytes.Length - 2] == 0xB5)
return new PresetAmountResponse();
else if (bytes[bytes.Length - 2] == 0xB9)
return new PresetVolumeResponse();
else if (bytes[bytes.Length - 2] == 0xD5)
return new ReadPumpStateResponse();
else if (bytes[bytes.Length - 2] == 0xCD)
return new ClearTotalizerResponse();
else if (bytes[bytes.Length - 2] == 0xD9)
return new ReadFuelDataResponse();
else if (bytes[bytes.Length - 2] == 0xC5)
return new ReadTotalizerResponse();
else if (bytes[bytes.Length - 2] == 0xC7)
return new ReadShiftTotalizerResponse();
else if (bytes[bytes.Length - 2] == 0xC3)
return new OpenResponse();
else if (bytes[bytes.Length - 2] == 0xCA)
return new CloseResponse();
else if (bytes[bytes.Length - 2] == 0xE5)
return new AcquireControlResponse();
else if (bytes[bytes.Length - 2] == 0xE7)
return new AcquireReturnControlResponse();
else if (bytes[bytes.Length - 2] == 0xEA)
return new ClearShiftTotalizerResponse();
else if (bytes[bytes.Length - 2] == 0xBA)
return new SuspendFuelResponse();
else if (bytes[bytes.Length - 2] == 0xB3)
return new ResumeFuelResponse();
// 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();
return null;
}
}
}