public void fromAdmin(Message message, SessionID sessionID) { if (!isTimerAdjusted) { SendingTime sendingTime = new SendingTime(); message.getHeader().getField(sendingTime); Utils.AdjustTime(sendingTime.getValue()); isTimerAdjusted = true; } }
public int GetHeaderSize() // подсчет длины строки заголовка без первых двух полей { string tmpString = String.Format("35={0}\u000156={1}\u000149={2}\u000134={3}\u000152={4}\u0001", MsgType, SenderCompID, TargetCompID, MsgSeqNum.ToString(), SendingTime.AddHours(-3).ToString("yyyyMMdd-HH:mm:ss.fff") ); return(tmpString.Length); }
public override string ToString() // формирование строки заголовка { MessageString = String.Format("8={0}\u00019={1}\u000135={2}\u000134={3}\u000149={4}\u000152={5}\u000156={6}\u0001", BeginString, BodyLength.ToString(), MsgType, MsgSeqNum.ToString(), SenderCompID, SendingTime.AddHours(-3).ToString("yyyyMMdd-HH:mm:ss.fff"), TargetCompID ); MessageSize = MessageString.Length; // для HeaderMessage MessageSize не использовать! return(MessageString); }
public override int GetHashCode() { int hash = 1; if (MsgType.Length != 0) { hash ^= MsgType.GetHashCode(); } if (HeartBtInt != 0) { hash ^= HeartBtInt.GetHashCode(); } if (RejectText.Length != 0) { hash ^= RejectText.GetHashCode(); } hash ^= account_.GetHashCode(); if (SendingTime != 0L) { hash ^= SendingTime.GetHashCode(); } if (CstmApplVerId.Length != 0) { hash ^= CstmApplVerId.GetHashCode(); } if (Username.Length != 0) { hash ^= Username.GetHashCode(); } if (Password.Length != 0) { hash ^= Password.GetHashCode(); } if (RawData.Length != 0) { hash ^= RawData.GetHashCode(); } if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } return(hash); }
public override void onMessage(QuickFix44.MarketDataSnapshotFullRefresh message, SessionID session) { // getting attributes Symbol symbol = message.getSymbol(); SendingTime sendingTime = new SendingTime(message.getHeader().getUtcTimeStamp(SendingTime.FIELD)); NoMDEntries noMDEntries = message.getNoMDEntries(); decimal ask = 0m; decimal bid = 0m; decimal askSize = 0m; decimal bidSize = 0m; for (int i = 0; i < noMDEntries.getValue(); i++) { QuickFix44.MarketDataSnapshotFullRefresh.NoMDEntries group = new QuickFix44.MarketDataSnapshotFullRefresh.NoMDEntries(); message.getGroup((uint)i + 1, group); MDEntryType mdEntryType = group.getMDEntryType(); MDEntryPx mdEntryPx = group.getMDEntryPx(); MDEntrySize mdEntrySize = group.getMDEntrySize(); if (mdEntryType.getValue() == MDEntryType.BID) { bid = (decimal)mdEntryPx.getValue(); bidSize = (decimal)mdEntrySize.getValue(); } else if (mdEntryType.getValue() == MDEntryType.OFFER) { ask = (decimal)mdEntryPx.getValue(); askSize = (decimal)mdEntrySize.getValue(); } } // firing event Console.WriteLine("QuickFix44.MarketDataSnapshotFullRefresh: {0}, {1}/{2}, {3}/{4}, {5}", symbol, ask, bid, askSize, bidSize, sendingTime); this.fixServices.NotifyQuote(Counterpart.Dukascopy, symbol.getValue(), ask, askSize, bid, bidSize, sendingTime.getValue()); }
public void fromAdmin(Message message, SessionID sessionID) { if(!isTimerAdjusted) { SendingTime sendingTime = new SendingTime(); message.getHeader().getField(sendingTime); Utils.AdjustTime(sendingTime.getValue()); isTimerAdjusted = true; } //AddText("fromAdmin " + message + Environment.NewLine); }
public override int GetHashCode() { int hash = 1; if (Price != 0F) { hash ^= Price.GetHashCode(); } if (Date.Length != 0) { hash ^= Date.GetHashCode(); } if (Datetime.Length != 0) { hash ^= Datetime.GetHashCode(); } if (SendingTime.Length != 0) { hash ^= SendingTime.GetHashCode(); } if (TransactTime.Length != 0) { hash ^= TransactTime.GetHashCode(); } if (Amount != 0F) { hash ^= Amount.GetHashCode(); } if (Towards != 0L) { hash ^= Towards.GetHashCode(); } if (Code.Length != 0) { hash ^= Code.GetHashCode(); } if (User.Length != 0) { hash ^= User.GetHashCode(); } if (Strategy.Length != 0) { hash ^= Strategy.GetHashCode(); } if (Type.Length != 0) { hash ^= Type.GetHashCode(); } if (BidModel.Length != 0) { hash ^= BidModel.GetHashCode(); } if (AmountModel.Length != 0) { hash ^= AmountModel.GetHashCode(); } if (OrderId.Length != 0) { hash ^= OrderId.GetHashCode(); } if (TradeId.Length != 0) { hash ^= TradeId.GetHashCode(); } if (Status.Length != 0) { hash ^= Status.GetHashCode(); } return(hash); }
public Fsm(long chatId, Message msg, TelegramBotClient bot, Context db) { User state; lock (Locker) { state = db.Users.FirstOrDefault(x => x.ChatId == chatId); } if (state == null) { User user = new User { ChatId = chatId, State = StateChatEnum.StartMain }; db.Users.Add(user); db.SaveChanges(); } if (state != null) { IUpdateState updateState; switch (state.State) { case StateChatEnum.StartMain: var uid = db.Users.FirstOrDefault(x => x.ChatId == chatId); if (uid == null) { User user = new User { ChatId = chatId, State = StateChatEnum.StartText }; db.Users.Add(user); db.SaveChanges(); } updateState = new StartMain(); break; case StateChatEnum.EndAddress: updateState = new EndAddress(); break; case StateChatEnum.StartText: updateState = new StartText(); break; case StateChatEnum.SendingTime: updateState = new SendingTime(); break; case StateChatEnum.SendingNumberPhone: updateState = new SendingNumberPhone(); break; case StateChatEnum.PaymentMethod: updateState = new PaymentMethod(); break; case StateChatEnum.CarSearch: updateState = new CarSearch(); break; //case StateChatEnum.CarSearch: // updateState = new CarSearch(); // break; default: throw new AggregateException(); } updateState.UpdateAsync(msg, bot, chatId, db); } }