internal IMessage ParsePayload(string payload) { var bitVector = ConvertPayload(payload); try { switch (payload.First()) { case '1': var msg1 = new MessageType1(bitVector); msg1.Distance = _distanceCalculator.Calc(_observationPoint.Longitude, _observationPoint.Latitude, msg1.Longitude, msg1.Latitude); return(msg1); case '3': var msg3 = new MessageType3(bitVector); msg3.Distance = _distanceCalculator.Calc(msg3.Longitude, msg3.Latitude, _observationPoint.Longitude, _observationPoint.Latitude); return(msg3); case '4': var msg4 = new MessageType4(bitVector); msg4.Distance = _distanceCalculator.Calc(msg4.Longitude, msg4.Latitude, _observationPoint.Longitude, _observationPoint.Latitude); return(msg4); case '5': return(new MessageType5(bitVector)); default: return(new MessageTypeNotImplemented(payload)); } } catch (Exception ex) { return(new MessageParsingError($"Payload: {payload}, {ex.Message}", ex.StackTrace)); } }
private void cmbMessageType_SelectedIndexChanged(object sender, EventArgs e) { RootMessages messageObject; byte messageID = Convert.ToByte(cmbMessageType.SelectedItem.ToString().Split(' ')[2]); #region Mesaj ID göre MesajType[MesajID] nesnesi oluşturuluyor. if (messageID == 1) { messageObject = new MessageType1(); } else if (messageID == 2) { messageObject = new MessageType2(); } else if (messageID == 3) { messageObject = new MessageType3(); } else if (messageID == 4) { messageObject = new MessageType4(); } else if (messageID == 5) { messageObject = new MessageType5(); } else if (messageID == 6) { messageObject = new MessageType6(); } else if (messageID == 7) { messageObject = new MessageType7(); } else if (messageID == 8) { messageObject = new MessageType8(); } else if (messageID == 9) { messageObject = new MessageType9(); } else if (messageID == 10) { messageObject = new MessageType10(); } else if (messageID == 11) { messageObject = new MessageType11(); } else if (messageID == 12) { messageObject = new MessageType12(); } else if (messageID == 13) { messageObject = new MessageType13(); } else if (messageID == 14) { messageObject = new MessageType14(); } else if (messageID == 15) { messageObject = new MessageType15(); } else if (messageID == 16) { messageObject = new MessageType16(); } else if (messageID == 17) { messageObject = new MessageType17(); } else if (messageID == 18) { messageObject = new MessageType18(); } else if (messageID == 19) { messageObject = new MessageType19(); } else if (messageID == 20) { messageObject = new MessageType20(); } else if (messageID == 22) { messageObject = new MessageType22(); } else if (messageID == 23) { messageObject = new MessageType23(); } else if (messageID == 24) { string type = cmbMessageType.SelectedItem.ToString().Split(' ')[3]; if (type == "A") { messageObject = new MessageType24A(); } else { messageObject = new MessageType24B(); } } else if (messageID == 25) { messageObject = new MessageType25(); } //MessageBox.Show("Mesaj 26 düzelt"); else if (messageID == 26) { messageObject = new MessageType26(); } else if (messageID == 27) { messageObject = new MessageType27(); } else { MessageBox.Show("MESAJ PARSE EDİLEMEDİ.", "HATALI MESAJ", MessageBoxButtons.OK, MessageBoxIcon.Error); messageObject = null; } #endregion AddMessagesRows(messageObject); }
private void btnConstructorMessage_Click(object sender, EventArgs e) { #region return edilen Message ID'sine göre ilgili sınıfta işlem yapılacak. RootMessages messageObject; byte messageID = Convert.ToByte(cmbMessageType.SelectedItem.ToString().Split(' ')[2]); if (messageID == 1) { messageObject = new MessageType1(); } else if (messageID == 2) { messageObject = new MessageType2(); } else if (messageID == 3) { messageObject = new MessageType3(); } else if (messageID == 4) { messageObject = new MessageType4(); } else if (messageID == 5) { messageObject = new MessageType5(); } else if (messageID == 6) { messageObject = new MessageType6(); } else if (messageID == 7) { messageObject = new MessageType7(); } else if (messageID == 8) { messageObject = new MessageType8(); } else if (messageID == 9) { messageObject = new MessageType9(); } else if (messageID == 10) { messageObject = new MessageType10(); } else if (messageID == 11) { messageObject = new MessageType11(); } else if (messageID == 12) { messageObject = new MessageType12(); } else if (messageID == 13) { messageObject = new MessageType13(); } else if (messageID == 14) { messageObject = new MessageType14(); } else if (messageID == 15) { messageObject = new MessageType15(); } else if (messageID == 16) { messageObject = new MessageType16(); } else if (messageID == 18) { messageObject = new MessageType18(); } else if (messageID == 19) { messageObject = new MessageType19(); } else if (messageID == 20) { messageObject = new MessageType20(); } else if (messageID == 22) { messageObject = new MessageType22(); } else if (messageID == 23) { messageObject = new MessageType23(); } else if (messageID == 24) { MessageType24 mesaj24 = new MessageType24(); mesaj24.setPartNumber(VDM1); if (mesaj24.getPartNumber() == 0) { messageObject = new MessageType24A(); } else { messageObject = new MessageType24B(); } } else if (messageID == 25) { messageObject = new MessageType25(); } //MessageBox.Show("Mesaj 26 düzelt"); else if (messageID == 26) { messageObject = new MessageType26(); } else if (messageID == 27) { messageObject = new MessageType27(); } else { MessageBox.Show("MESAJ PARSE EDİLEMEDİ.", "HATALI MESAJ", MessageBoxButtons.OK, MessageBoxIcon.Error); messageObject = null; } #endregion ConstructorMessage(messageObject); }
private void Run() { ////Datagridview işlemleri //dgwMessages.ReadOnly = true; try { //Mesaj cümle sayısı döndürülüyor. sentencePartCount = getSentenceCount(); //Mesaj ID döndürülüyor. byte messageID = root.getMessageID(VDM1); RootMessages mesaj; if (sentencePartCount == 1) { #region return edilen Message ID'sine göre ilgili sınıfta işlem yapılacak. if (messageID == 1) { mesaj = new MessageType1(); } else if (messageID == 2) { mesaj = new MessageType2(); } else if (messageID == 3) { mesaj = new MessageType3(); } else if (messageID == 4) { mesaj = new MessageType4(); } else if (messageID == 6) { mesaj = new MessageType6(); } else if (messageID == 7) { mesaj = new MessageType7(); } else if (messageID == 8) { mesaj = new MessageType8(); } else if (messageID == 9) { mesaj = new MessageType9(); } else if (messageID == 10) { mesaj = new MessageType10(); } else if (messageID == 11) { mesaj = new MessageType11(); } else if (messageID == 12) { mesaj = new MessageType12(); } else if (messageID == 13) { mesaj = new MessageType13(); } else if (messageID == 14) { mesaj = new MessageType14(); } else if (messageID == 15) { mesaj = new MessageType15(); } else if (messageID == 16) { mesaj = new MessageType16(); } else if (messageID == 18) { mesaj = new MessageType18(); } else if (messageID == 19) { mesaj = new MessageType19(); } else if (messageID == 20) { mesaj = new MessageType20(); } else if (messageID == 22) { mesaj = new MessageType22(); } else if (messageID == 23) { mesaj = new MessageType23(); } else if (messageID == 24) { MessageType24 mesaj24 = new MessageType24(); mesaj24.setPartNumber(VDM1); if (mesaj24.getPartNumber() == 0) { mesaj = new MessageType24A(); } else { mesaj = new MessageType24B(); } } else if (messageID == 25) { mesaj = new MessageType25(); } //MessageBox.Show("Mesaj 26 düzelt"); else if (messageID == 26) { mesaj = new MessageType26(); } else if (messageID == 27) { mesaj = new MessageType27(); } else { MessageBox.Show("MESAJ PARSE EDİLEMEDİ.", "HATALI MESAJ", MessageBoxButtons.OK, MessageBoxIcon.Error); mesaj = null; } #endregion //Mesaj parse edilecek mesaj.Parser(VDM1); // ve datagridview'e eklenecek. ShowMessageValue(mesaj); } else if (sentencePartCount == 2 && messageID != 0) { #region return edilen Message ID'sine göre ilgili sınıfta işlem yapılacak. if (messageID == 5) { mesaj = new MessageType5(); } else if (messageID == 12) { mesaj = new MessageType12(); } else if (messageID == 17) { mesaj = new MessageType17(); } else if (messageID == 21) { mesaj = new MessageType21(); } else { mesaj = null; } #endregion //Mesaj parse edilecek mesaj.Parser(VDM1, VDM2); //ve datagridview'e eklenecek. ShowMessageValue(mesaj); } } catch (Exception ex) { log.Error(ex, "frmMain :: Run"); throw; } }