protected bool GenerateLogon()
{
Message logon = msgFactory_.Create(this.SessionID.BeginString, Fields.MsgType.LOGON);
logon.SetField(new Fields.EncryptMethod(0));
logon.SetField(new Fields.HeartBtInt(state_.HeartBtInt));
if (this.SessionID.IsFIXT)
logon.SetField(new Fields.DefaultApplVerID("FIXME"));
if (this.RefreshOnLogon)
Refresh();
if (this.ResetOnLogon)
state_.Reset();
if (ShouldSendReset())
logon.SetField(new Fields.ResetSeqNumFlag(true));
InitializeHeader(logon);
state_.LastReceivedTimeTickCount = System.Environment.TickCount;
state_.TestRequestCounter = 0;
state_.SentLogon = true;
return SendRaw(logon, 0);
}