public void Parse() { _token = 0; MessageToModelConfig cfg = GetMessageToModelConfig(); _modelCfg = cfg.ModelCfg; _msgCfg = _modelCfg.MessageCfg; ProcessModel = cfg.ProcessModel; CheckMessageLength(); ParseHeaders(); ParseFields(); ConvertToModel(); }
private MessageToModelConfig GetMessageToModelConfig() { MessageToModelConfig cfg = (_workerThread != null && _workerThread.MessageToModelConfig != null) ? _workerThread.MessageToModelConfig : MessageConfigs.GetQulifiedMessageToModel(_bytes); if (cfg == null) { byte[] bytes2 = new byte[config.MaskConfig.MinBytesCountToCheck < _bytes.Length ? config.MaskConfig.MinBytesCountToCheck : _bytes.Length]; Array.Copy(_bytes, bytes2, bytes2.Length); throw new MessageParserException("No matching config for this message. Check message-to-model elements in configuration file." + Environment.NewLine + bytes2.Length + " first bytes of message: " + MessageUtility.HexToReadableString(bytes2)); } return(cfg); }