Example #1
0
        public virtual void SendMessageRequest(int applBegSeqNum, int applEndSeqNum)
        {
            QuickFix.FIX44.ApplicationMessageRequest request = new QuickFix.FIX44.ApplicationMessageRequest();
            try
            {
                //_mktIncProc.HabilitarProcessamentoMensagens = false;

                StringBuilder applReqID = new StringBuilder();
                applReqID.Append(DateTime.Now.ToString("yyyyMMddHHmmss"));
                applReqID.Append("-");
                applReqID.Append(_channelUmdfConfig.ChannelID);
                applReqID.Append("-");
                applReqID.Append(applBegSeqNum.ToString());
                applReqID.Append("-");
                applReqID.Append(applEndSeqNum.ToString());

                logger.Info("Solicitando replay. ApplReqID[" + applReqID.ToString() + "]");

                request.Set(new QuickFix.Fields.ApplReqID(applReqID.ToString()));
                request.Set(new QuickFix.Fields.ApplReqType(0));

                QuickFix.FIX44.ApplicationMessageRequest.NoApplIDsGroup groupApplIDs = new QuickFix.FIX44.ApplicationMessageRequest.NoApplIDsGroup();
                groupApplIDs.Set(new QuickFix.Fields.RefApplID(_channelUmdfConfig.ChannelID));
                groupApplIDs.Set(new QuickFix.Fields.ApplBegSeqNum(applBegSeqNum));
                groupApplIDs.Set(new QuickFix.Fields.ApplEndSeqNum(applEndSeqNum));

                request.AddGroup(groupApplIDs);

                bool bRet = Session.SendToTarget(request, _session);
                if (!bRet)
                {
                    logger.Error("Falha na solicitacao do replay. ApplReqID[" + applReqID.ToString() + "]");
                }
            }
            catch (Exception ex)
            {
                logger.Error("SendMessageRequest(): " + ex.Message, ex);
            }
        }