object ReceiveMessage(int evt, MessageQueue.MessageFlag flag, object data) { if (evt == (int)SQLClient.ConnectEvent.ExcuteSql) { try { _Args = data as MessageReceiveEventArgs; CurrentConnection currentConnection = new CurrentConnection( _Args.ConnectionInfo as ConnectionInformation); CurrentConnection.ConnectionInfo.QueryThread = this; _ManagedThreadId = this.ManagedThreadId; if (!_Args.QueryStoreProcedure) { int queryQueueWaitingTimeout = Global.Setting.Config.QueryQueueWaitingTimeout; if (queryQueueWaitingTimeout > 0) { TimeSpan timeSpan = DateTime.Now - _Args.StartTime; if (timeSpan.TotalSeconds > queryQueueWaitingTimeout) { throw new Hubble.Core.Query.QueryException("Timeout during sql was waiting in Query Queue."); } } } HubbleTask.ExcuteSqlMessageProcess(_Args); _Args = null; } catch (Exception e) { _Args.ReturnMsg = e; TcpServer.ReturnMessage(_Args); } finally { _Pool.ExecuteFinished(this); CurrentConnection.Disconnect(); } } return(null); }
private object ProcessMessage(int evt, MessageQueue.MessageFlag flag, object data) { switch ((Event)evt) { case Event.Add: _PayloadEntities.Add((PayloadEntity)data); break; case Event.Collect: SaveToFile(); break; case Event.Update: UpdateToFile((List <PayloadEntity>)data); break; } return(null); }