QuickFix.Session.GenerateResendRequest C# (CSharp) Method

GenerateResendRequest() protected method

protected GenerateResendRequest ( string beginString, int msgSeqNum ) : bool
beginString string
msgSeqNum int
return bool
        protected bool GenerateResendRequest(string beginString, int msgSeqNum)
        {
            Message resendRequest = msgFactory_.Create(beginString, MsgType.RESEND_REQUEST);

            Fields.BeginSeqNo beginSeqNo = new Fields.BeginSeqNo(state_.GetNextTargetMsgSeqNum());
            Fields.EndSeqNo endSeqNo;
            if (beginString.CompareTo(FixValues.BeginString.FIX42) >= 0)
                endSeqNo = new Fields.EndSeqNo(0);
            else if (beginString.CompareTo(FixValues.BeginString.FIX41) <= 0)
                endSeqNo = new Fields.EndSeqNo(999999);
            else
                endSeqNo = new Fields.EndSeqNo(msgSeqNum - 1);

            resendRequest.SetField(beginSeqNo);
            resendRequest.SetField(endSeqNo);
            InitializeHeader(resendRequest);
            if (SendRaw(resendRequest, 0))
            {
                this.Log.OnEvent("Sent ResendRequest FROM: " + beginSeqNo.Obj + " TO: " + endSeqNo.Obj);
                state_.SetResendRange(beginSeqNo.Obj, msgSeqNum - 1);
                return true;
            }
            else
            {
                this.Log.OnEvent("Error sending ResendRequest (" + beginSeqNo.Obj + " ," + endSeqNo.Obj + ")");
                return false;
            }
        }