コード例 #1
0
        //*** DATE FUNCTIONS
        public bool IsDateOk(string pDate)
        {
            bool result = true;

            trace.Write(TraceLevel.Debug, "CDatM::IsDateOk");

            try
            {
                if (String.IsNullOrWhiteSpace(pDate))
                {
                    throw new ArgumentNullException(nameof(pDate), "Invalid input parameter");
                }

                if (pDate.Length != DEF_DATA_LEN)
                {
                    throw new ArgumentNullException(nameof(pDate), "Invalid input parameter");
                }

                COPSDate date = new COPSDate(pDate);
                return(date.IsValid());
            }
            catch (Exception error)
            {
                trace.Write(TraceLevel.Error, error.ToLogString());
            }

            return(result);
        }
コード例 #2
0
        public bool SetOutOperDateRealIni(COPSDate date)
        {
            trace.Write(TraceLevel.Debug, "CDatM1::SetOutOperDateRealIni");
            bool fnResult = true;

            try
            {
                if (date == null)
                {
                    throw new ArgumentNullException(nameof(date), "Parameter NULL");
                }

                if (!date.IsValid())
                {
                    throw new ArgumentOutOfRangeException(nameof(date), "Not a valid Date");
                }

                m_dtOutOperDateRealIni = date.Copy();
            }
            catch (Exception error)
            {
                trace.Write(TraceLevel.Error, error.ToLogString());
                fnResult = false;
            }

            return(fnResult);
        }
コード例 #3
0
        public void IsValid_ReturnExpectedValues(string dateString, bool expected)
        {
            COPSDate date = new COPSDate();

            date.Set(dateString);

            bool actual = date.IsValid();

            Assert.Equal(expected, actual);
        }
コード例 #4
0
 public bool IsDateOk(COPSDate pDate)
 {
     return(pDate.IsValid());
 }
コード例 #5
0
        public bool SetMsg(CPDMMessage message)
        {
            bool result = true;

            trace.Write(TraceLevel.Debug, "CDatM::SetMsg");

            try
            {
                if (message == null)
                {
                    throw new ArgumentNullException(nameof(message), "Parameter NULL");
                }

                if (m_strIDMsg == string.Empty)
                {
                    throw new InvalidOperationException("m_strIDMsg Must be initialized in Ctor");
                }

                message.SendingPriority = m_iSendingPriority;

                string szAuxTel = string.Empty;
                string szAuxData;
                string szAuxXml;

                if (m_szHdSrc.Length == 0)
                {
                    trace.Write(TraceLevel.Error, "Atributo Nodo Raiz 'p' - Src");
                    return(false);
                }

                szAuxXml  = $"<p src=\"{m_szHdSrc}\"";
                szAuxTel += szAuxXml;
                if (m_dtHdDate.IsValid())
                {
                    szAuxXml  = $" dtx=\"{m_dtHdDate.CopyToChar()}\"";
                    szAuxTel += szAuxXml;
                }
                szAuxTel += ">";

                // Atributos Nodo Mensaje 'M' - id (Obligatorio)
                if (m_iIdentifier == GlobalDefs.DEF_UNDEFINED_VALUE)
                {
                    trace.Write(TraceLevel.Error, "Atributo Nodo Mensaje 'M' - id");
                    return(false);
                }
                else
                {
                    szAuxXml  = $"<{m_strIDMsg} id=\"{m_iIdentifier}\"";
                    szAuxTel += szAuxXml;
                }

                // Atributos Nodo Mensaje 'M' - ret (Opcional)
                if (m_iRet == GlobalDefs.DEF_UNDEFINED_VALUE || m_iRet == 0)
                {
                    trace.Write(TraceLevel.Info, "Atributo Nodo Mensaje 'M' - ret no se incluye");
                }
                else
                {
                    szAuxXml  = $" ret=\"{m_iRet}\"";
                    szAuxTel += szAuxXml;
                }

                // Atributos Nodo Mensaje 'M' - dst (Opcional)
                if (m_szDst.Length == 0)
                {
                    trace.Write(TraceLevel.Info, "Atributo Nodo Mensaje 'M' - dst no se incluye");
                }
                else
                {
                    szAuxXml  = $" dst=\"{m_szDst}\"";
                    szAuxTel += szAuxXml;
                }

                // Atributos Nodo Mensaje 'M' - pty (Opcional)
                if (m_iPriority == GlobalDefs.DEF_UNDEFINED_VALUE)
                {
                    trace.Write(TraceLevel.Info, "Atributo Nodo Mensaje 'M' - pty no se incluye");
                }
                else
                {
                    szAuxXml  = $" pty=\"{m_iPriority}\"";
                    szAuxTel += szAuxXml;
                }

                szAuxTel += ">";

                if (!ProcessGetTelegram(szAuxTel))
                {
                    return(false);
                }

                szAuxXml  = $"</{m_strIDMsg}></p>";
                szAuxTel += szAuxXml;
                trace.Write(TraceLevel.Info, $"Aux XMl TEl: -{szAuxTel}-");

                message.SetTelegram(szAuxTel, szAuxTel.Length);
            }
            catch (Exception error)
            {
                trace.Write(TraceLevel.Error, error.ToLogString());
                result = false;
            }

            return(result);
        }