//--------------------------------------------------------Constructor:----------------------------------------------------------------\\ #region --Constructors-- public QueryArchiveResultMessage(XmlNode node, XmlNode resultNode, XmlNode forwardedNode, List <AbstractMessage> content) : base(node) { QUERY_ID = resultNode.Attributes["queryid"]?.Value; CONTENT = content; XmlNode delayNode = XMLUtils.getChildNode(forwardedNode, "delay", Consts.XML_XMLNS, Consts.XML_XEP_0203_NAMESPACE); DELAY = MessageMessage.parseDelay(delayNode); foreach (AbstractMessage message in CONTENT) { if (message is MessageMessage msg) { msg.addDelay(DELAY); } } }
//--------------------------------------------------------Constructor:----------------------------------------------------------------\\ #region --Constructors-- public QueryArchiveResultMessage(XmlNode answer) : base(answer) { XmlNode resultNode = XMLUtils.getChildNode(answer, "result", Consts.XML_XMLNS, Consts.XML_XEP_0313_NAMESPACE); if (!(resultNode is null)) { QUERY_ID = resultNode.Attributes["queryid"]?.Value; XmlNode forwardedNode = XMLUtils.getChildNode(resultNode, "forwarded", Consts.XML_XMLNS, Consts.XML_XEP_0297_NAMESPACE); if (!(forwardedNode is null)) { XmlNode messageNode = XMLUtils.getChildNode(forwardedNode, "message"); if (!(messageNode is null)) { MESSAGE = new MessageMessage(messageNode, CarbonCopyType.NONE); XmlNode delayNode = XMLUtils.getChildNode(forwardedNode, "delay", Consts.XML_XMLNS, Consts.XML_XEP_0203_NAMESPACE); if (!(delayNode is null)) { MESSAGE.parseDelay(delayNode); } } } } }