public method O2GOrdersTableResponseReader.getRow

Brief

Gets a row from the Orders table.

Declaration
C#
O2GOrderRow  getRow (int index)

Parameters
index

The index of the row. The index must be between 0 and Count - 1.

Details

If the row is not found, the method returns null.

Example

Get rows from the Orders table [hide]

        public void ReadOrders(string sAccountID)
        {
            O2GLoginRules loginRules = mSession.getLoginRules();
            if (loginRules.isTableLoadedByDefault(O2GTableType.Orders))
            {
                O2GResponse ordersResponse = loginRules.getTableRefreshResponse(O2GTableType.Orders);
                O2GResponseReaderFactory factory = mSession.getResponseReaderFactory();
                if (factory != null)
                {
                    O2GOrdersTableResponseReader reader = factory.createOrdersTableReader(ordersResponse);
                    for (int i = 0; i < reader.Count; i++)
                    {
                        O2GOrderRow row = reader.getRow(i);
                        if (sAccountID == row.AccountID)
                            Console.WriteLine("OrderID={0}, Amount={1}, BuySell={2}", row.OrderID, row.Amount, row.BuySell);
                    }
                }
            }
            else
            {
                O2GRequestFactory requestFactory = mSession.getRequestFactory();
                if (requestFactory != null)
                {
                    O2GRequest request = requestFactory.createRefreshTableRequestByAccount(O2GTableType.Orders, sAccountID);
                    ResponseListener listener  = new ResponseListener(mSession);
                    listener.RequestID = request.RequestID;
                    mSession.subscribeResponse(listener);
                    mSession.sendRequest(request);
                    Thread.Sleep(10000);
                    mSession.unsubscribeResponse(listener);
                }
            }
        }
 
   class ResponseListener : IO2GResponseListener
   {
        private O2GSession mSession;
 
        public ResponseListener(O2GSession session)
        {
            mSession = session;
        }
 
        public string RequestID
        {
            get { return mRequestID; }
            set { mRequestID = value; }
        }
        private string mRequestID;
 
        public void onRequestCompleted(string requestId, O2GResponse response)
        {
            O2GResponseReaderFactory factory = mSession.getResponseReaderFactory();
            if (factory != null)
            {
                if (requestId == mRequestID)
                {
                    if (response.Type == O2GResponseType.GetOrders)
                    {
                        O2GOrdersTableResponseReader reader = factory.createOrdersTableReader(response);
                        for (int i = 0; i < reader.Count; i++)
                        {
                            O2GOrderRow row = reader.getRow(i);
                            Console.WriteLine("OrderID={0}, Amount={1}, BuySell={2}", row.OrderID, row.Amount, row.BuySell);
                        }
                    }
                }
            }
        }
 
        public void onRequestFailed(string requestId, string error)
        {
 
        }
 
        public void onTablesUpdates(O2GResponse data)
        {
 
        }
    }

Declared in O2GOrdersTableResponseReader

back