private List <AlarmS7UImodel> ReadingSpecifiedS7DetailedAlarms(List <int> PLCconnectionIDlidt, List <int> alarmIdentityList) { _logger.Info($"Method for returning list of specified full definitions of alarms, fired. AMount of alarms: {alarmIdentityList.Count}."); //read alarm definitions list - ordered by Identity List <S7AlarmDefinition> alarmDefinitions = ReadSpecificAlarmsDefinitions(PLCconnectionIDlidt, alarmIdentityList); //read list of alarm texts - ordered by alarm identity AlarmTextsReader reader = new AlarmTextsReader(_realmProvider); List <AlarmLanguagesDefinition> alarmTexts = reader.ReadTextsForSpecificAlarms(alarmIdentityList, PLCconnectionIDlidt); //Merge read data int one list of objects List <AlarmS7UImodel> outputList = new List <AlarmS7UImodel>(); if (alarmDefinitions.Count == alarmTexts.Count) { for (int i = 0; i < alarmDefinitions.Count; i++) { outputList.Add(MergeAlarmDefinitionAndAlarmTexts(alarmDefinitions[i], alarmTexts[i])); } return(outputList); } else { _logger.Error($"List of read alarm definitions and list of alarm texts do not have the same amount of items!."); return(new List <AlarmS7UImodel>()); } }
private List <AlarmS7UImodel> ReadAllS7DetailedAlarms(int plcConnectionID) { _logger.Info($"Method for reading all alarms for specific PLC connection, fired. Connection ID: {plcConnectionID}."); //read list of alarms - ordered by identity List <S7AlarmDefinition> alarmDefinitions = ReadAllAlarmsDefinitions(plcConnectionID); //read list of all texts for those data - ordered by alarm dentity AlarmTextsReader reader = new AlarmTextsReader(_realmProvider); List <AlarmLanguagesDefinition> alarmTexts = reader.ReadAllTextsForSpecificConnection(plcConnectionID); //Merge read data int one list of objects List <AlarmS7UImodel> outputList = new List <AlarmS7UImodel>(); if (alarmDefinitions.Count == alarmTexts.Count) { for (int i = 0; i < alarmDefinitions.Count; i++) { outputList.Add(MergeAlarmDefinitionAndAlarmTexts(alarmDefinitions[i], alarmTexts[i])); } return(outputList); } else { _logger.Error($"List of read alarm definitions and list of alarm texts do not have the same amount of items!."); return(new List <AlarmS7UImodel>()); } }
private AlarmS7UImodel ReadSingleS7DetailedAlarm(int plcConnectionID, int alarmIdentity) { _logger.Info($"Method for obtaining full data of single alarm with PLC connection ID: {plcConnectionID}, and Identity: {alarmIdentity}; fired."); //read alarm definition S7AlarmDefinition alarmDefinition = ReadSingleAlarmDefinition(plcConnectionID, alarmIdentity); //create instance of alarm texts reader AlarmTextsReader reader = new AlarmTextsReader(_realmProvider); //read alarm texts AlarmLanguagesDefinition alarmTexts = reader.GetTextsTorSingleAlarm(alarmIdentity, plcConnectionID); //merge objects into one return(MergeAlarmDefinitionAndAlarmTexts(alarmDefinition, alarmTexts)); }