IllogicalMessageErrorEvent.fromXML constructor

IllogicalMessageErrorEvent.fromXML(
  1. String xmlSTR
)

Implementation

factory IllogicalMessageErrorEvent.fromXML(String xmlSTR) {
  final document = XmlDocument.parse(xmlSTR);

  String messageName = document.rootElement.attributes.firstWhere((p0) => p0.name.toString() == "messageName").value;
  String messageID = document.rootElement.attributes.firstWhere((p0) => p0.name.toString() == "messageID").value;

  XmlElement eventElement = document.rootElement.findAllElements("illogicalMessageErrorEvent").first;
  String user = eventElement.attributes.firstWhere((p0) => p0.name.toString() == "user", orElse: orElseEmpty).value;
  String applicationVersion = eventElement.attributes.firstWhere((p0) => p0.name.toString() == "applicationVersion", orElse: orElseEmpty).value;
  String applicationName = eventElement.attributes.firstWhere((p0) => p0.name.toString() == "applicationName", orElse: orElseEmpty).value;
  String workstation =
      eventElement.attributes.firstWhere((p0) => p0.name.toString() == "workstation", orElse: orElseEmpty).value;
  XmlElement illogicalMessageElement = eventElement.findAllElements("illogicalMessage").first;
  String illogicalMessage = illogicalMessageElement.text;
  XmlElement expectedMessageNameListElement = eventElement.findAllElements("expectedMessageNameList").first;
  List<String> expectedMessageNameList = expectedMessageNameListElement.childElements.map((e) => e.attributes.firstWhere((p0)
  => p0.name.toString()=="messageName",orElse: orElseEmpty).value).toList();


  return IllogicalMessageErrorEvent(
    messageName: messageName,
    messageID: int.parse(messageID),
    user: user,
    workstation: workstation,
    applicationName: applicationName,
    applicationVersion: applicationVersion,
    illogicalMessage:illogicalMessage,
    expectedMessageNameList: expectedMessageNameList
  );
}