コード例 #1
0
 public void Push()
 {
     if (this._rowStoreListStatement == null)
     {
         this._rowStoreListStatement = new UtlDeque <LongKeyHashMap <IPersistentStore> >();
     }
     if (this._rowStoreMapStatement.IsEmpty())
     {
         this._rowStoreListStatement.Add(this.longKeyhashMapPool.Fetch());
     }
     else
     {
         this._rowStoreListStatement.Add(this._rowStoreMapStatement);
         this._rowStoreMapStatement = this.longKeyhashMapPool.Fetch();
     }
 }
コード例 #2
0
ファイル: RowSetNavigatorData.cs プロジェクト: cwdotson/FwNs
 public RowSetNavigatorData(Session session, QuerySpecification select)
 {
     this._table              = EmptyTable;
     this._session            = session;
     this._queryExpression    = select;
     base.RangePosition       = select.ResultRangePosition;
     this._visibleColumnCount = select.GetColumnCount();
     this._isSimpleAggregate  = select.IsAggregated && !select.IsGrouped;
     if (select.IsGrouped)
     {
         this._mainIndex = select.GroupIndex;
         this._rowMap    = new SortedList <object[], object[]>(this);
     }
     if (select.IdIndex != null)
     {
         this._idMap = new LongKeyHashMap <object[]>();
     }
 }
コード例 #3
0
 public void Pop()
 {
     this.ClearStatementTables();
     this.longKeyhashMapPool.Store(this._rowStoreMapStatement);
     this._rowStoreMapStatement = this._rowStoreListStatement.RemoveLast();
 }