public void onAdded(string sRowID, O2GRow rowData) { O2GTableType type = rowData.TableType; switch (type) { case O2GTableType.Orders: O2GOrderRow orderRow = (O2GOrderRow)rowData; if (mBatchOrderMonitor != null && mRequestIDs.Contains(orderRow.RequestID)) { Console.WriteLine("The order has been added. Order ID: {0}, Rate: {1}, Time In Force: {2}", orderRow.OrderID, orderRow.Rate, orderRow.TimeInForce); mBatchOrderMonitor.OnOrderAdded(orderRow); } break; case O2GTableType.Trades: O2GTradeRow tradeRow = (O2GTradeRow)rowData; if (mBatchOrderMonitor != null) { mBatchOrderMonitor.OnTradeAdded(tradeRow); if (mBatchOrderMonitor.IsBatchExecuted()) { PrintResult(); mResponseListener.StopWaiting(); } } break; case O2GTableType.ClosedTrades: O2GClosedTradeRow closedTradeRow = (O2GClosedTradeRow)rowData; if (mBatchOrderMonitor != null) { mBatchOrderMonitor.OnClosedTradeAdded(closedTradeRow); if (mBatchOrderMonitor.IsBatchExecuted()) { PrintResult(); mResponseListener.StopWaiting(); } } break; case O2GTableType.Messages: O2GMessageRow messageRow = (O2GMessageRow)rowData; if (mBatchOrderMonitor != null) { mBatchOrderMonitor.OnMessageAdded(messageRow); if (mBatchOrderMonitor.IsBatchExecuted()) { PrintResult(); mResponseListener.StopWaiting(); } } break; } }
public void onRequestFailed(string sRequestID, string sError) { Console.WriteLine("Request failed: {0}", sError); if (mRequestID.Equals(sRequestID) || mRequestIDs.Contains(sRequestID)) { if (mBatchOrderMonitor != null) { mBatchOrderMonitor.OnRequestFailed(sRequestID); if (mBatchOrderMonitor.IsBatchExecuted()) { PrintResult(); } } mSyncResponseEvent.Set(); } }