Esempio n. 1
0
 protected override void OnReadXml(XmlReader aXmlReader, SepaMessageInfo aMessageInfo)
 {
     this.m_sOrgnlPmtInfId = aXmlReader.ReadElementString("OrgnlPmtInfId");
     if (aXmlReader.IsStartElement("OrgnlNbOfTxs"))
     {
         aXmlReader.Skip();
     }
     if (aXmlReader.IsStartElement("OrgnlCtrlSum"))
     {
         aXmlReader.Skip();
     }
     if (aXmlReader.IsStartElement("PmtInfSts"))
     {
         if (aXmlReader.ReadElementString() != "RJCT")
         {
             throw new XmlException("Unsupported PmtInfSts");
         }
         while (aXmlReader.IsStartElement("StsRsnInf"))
         {
             SepaStatusReasonInformation item = new SepaStatusReasonInformation();
             item.ReadXml(aXmlReader, aMessageInfo);
             this.m_vStsRsnInfs.Add(item);
         }
     }
     while (aXmlReader.IsStartElement("TxInfAndSts"))
     {
         SepaOriginalTransactionInformation information2 = new SepaOriginalTransactionInformation();
         information2.ReadXml(aXmlReader, aMessageInfo);
         this.m_vTxInfAndSts.Add(information2);
     }
 }
Esempio n. 2
0
 protected override void OnReadXml(XmlReader aXmlReader, SepaMessageInfo aMessageInfo)
 {
     if (aXmlReader.IsStartElement("StsId"))
     {
         this.m_sStsId = aXmlReader.ReadElementString();
     }
     if (aXmlReader.IsStartElement("OrgnlInstrId"))
     {
         this.m_sOrgnlInstrId = aXmlReader.ReadElementString();
     }
     if (aXmlReader.IsStartElement("OrgnlEndToEndId"))
     {
         this.m_sOrgnlEndToEndId = aXmlReader.ReadElementString();
     }
     if (aXmlReader.IsStartElement("TxSts"))
     {
         if (aXmlReader.ReadElementString() != "RJCT")
         {
             throw new XmlException("Unsupported TxSts");
         }
         while (aXmlReader.IsStartElement("StsRsnInf"))
         {
             SepaStatusReasonInformation item = new SepaStatusReasonInformation();
             item.ReadXml(aXmlReader, aMessageInfo);
             this.m_vStsRsnInfs.Add(item);
         }
     }
     aXmlReader.ReadStartElement("OrgnlTxRef");
     if (aXmlReader.IsStartElement("Amt"))
     {
         aXmlReader.ReadStartElement();
         this.m_aAmt.ReadXml(aXmlReader, "InstdAmt");
         aXmlReader.ReadEndElement();
     }
     if (aXmlReader.IsStartElement("ReqdExctnDt"))
     {
         this.m_dtReqdDt = SepaUtil.ReadDtXml(aXmlReader, "ReqdExctnDt");
     }
     if (aXmlReader.IsStartElement("ReqdColltnDt"))
     {
         if (this.m_dtReqdDt > DateTime.MinValue)
         {
             throw new XmlException();
         }
         this.m_dtReqdDt = SepaUtil.ReadDtXml(aXmlReader, "ReqdColltnDt");
     }
     if (aXmlReader.IsStartElement("CdtrSchmeId"))
     {
         this.m_sCdtrSchmeId = SepaUtil.ReadCdtrSchmeIdXml(aXmlReader);
     }
     if (aXmlReader.IsStartElement("PmtTpInf"))
     {
         aXmlReader.ReadStartElement();
         if (aXmlReader.IsStartElement("InstrPrty"))
         {
             this.m_sInstrPrty = aXmlReader.ReadElementString();
         }
         if (aXmlReader.IsStartElement("SvcLvl"))
         {
             aXmlReader.ReadStartElement();
             string str2 = aXmlReader.ReadElementString("Cd");
             aXmlReader.ReadEndElement();
             if (str2 != "SEPA")
             {
                 throw new XmlException();
             }
         }
         if (aXmlReader.IsStartElement("LclInstrm"))
         {
             aXmlReader.ReadStartElement();
             this.m_sLclInstrmCd = aXmlReader.ReadElementString("Cd");
             aXmlReader.ReadEndElement();
         }
         if (aXmlReader.IsStartElement("SeqTp"))
         {
             this.m_sSeqTp = aXmlReader.ReadElementString();
         }
         if (aXmlReader.IsStartElement("CtgyPurp"))
         {
             aXmlReader.ReadStartElement();
             this.m_sCtgyPurp = aXmlReader.ReadElementString("Cd");
             aXmlReader.ReadEndElement();
         }
         aXmlReader.ReadEndElement();
     }
     if (aXmlReader.IsStartElement("MndtRltdInf"))
     {
         aXmlReader.ReadStartElement();
         if (aXmlReader.IsStartElement("MndtId"))
         {
             this.m_sMndtId = aXmlReader.ReadElementString();
         }
         if (aXmlReader.IsStartElement("DtOfSgntr"))
         {
             this.m_dtMndtDtOfSgntr = SepaUtil.ReadDtXml(aXmlReader, "DtOfSgntr");
         }
         if (aXmlReader.IsStartElement("AmdmntInd"))
         {
             aXmlReader.Skip();
         }
         if (aXmlReader.IsStartElement("AmdmntInfDtls"))
         {
             aXmlReader.Skip();
         }
         if (aXmlReader.IsStartElement("ElctrncSgntr"))
         {
             aXmlReader.Skip();
         }
         aXmlReader.ReadEndElement();
     }
     if (aXmlReader.IsStartElement("RmtInf"))
     {
         aXmlReader.ReadStartElement();
         if (aXmlReader.IsStartElement("Ustrd"))
         {
             this.m_sRmtInf = aXmlReader.ReadElementString();
         }
         else if (aXmlReader.IsStartElement("Strd"))
         {
             this.m_sRmtInf     = aXmlReader.ReadInnerXml();
             this.m_fRmtInfStrd = true;
         }
         aXmlReader.ReadEndElement();
     }
     if (aXmlReader.IsStartElement("UltmtDbtr"))
     {
         aXmlReader.Skip();
     }
     if (aXmlReader.IsStartElement("Dbtr"))
     {
         this.m_aDbtr.ReadXml(aXmlReader, aMessageInfo);
     }
     if (aXmlReader.IsStartElement("DbtrAcct"))
     {
         this.m_tDbtrAcctIBAN = SepaUtil.ReadAcctXml(aXmlReader, "DbtrAcct", out this.m_sDbtrAcctCcy);
     }
     if (aXmlReader.IsStartElement("DbtrAgt"))
     {
         this.m_tDbtrAgtBIC = SepaUtil.ReadAgtBIC(aXmlReader, "DbtrAgt");
     }
     if (aXmlReader.IsStartElement("CdtrAgt"))
     {
         this.m_tCdtrAgtBIC = SepaUtil.ReadAgtBIC(aXmlReader, "CdtrAgt");
     }
     if (aXmlReader.IsStartElement("Cdtr"))
     {
         this.m_aCdtr.ReadXml(aXmlReader, aMessageInfo);
     }
     if (aXmlReader.IsStartElement("CdtrAcct"))
     {
         this.m_tCdtrAcctIBAN = SepaUtil.ReadAcctXml(aXmlReader, "CdtrAcct", out this.m_sCdtrAcctCcy);
     }
     if (aXmlReader.IsStartElement("UltmtCdtr"))
     {
         aXmlReader.Skip();
     }
     aXmlReader.ReadEndElement();
 }