/** {@inheritDoc} */ @Override public EntityId getEntityId() { return mPagedResult.getEntityId(); }
/** {@inheritDoc} */ @Override public EntityId getEntityId() { return mResult.getEntityId(); }
mResult.getEntityId(), dataRequest.build(), mLayout,
/** {@inheritDoc} */ @Override public FijiRowData next(final int pageSize) { if (!hasNext()) { throw new NoSuchElementException("Fiji pager is exhausted."); } final FijiColumnName column = mColumnRequest.getColumnName(); final ColumnsDef columnDef = ColumnsDef .create() .withFilter(mColumnRequest.getFilter()) .withPageSize(FijiDataRequest.PAGING_DISABLED) .withMaxVersions(mColumnRequest.getMaxVersions()) .add(column, mColumnRequest.getReaderSpec()); final FijiDataRequestBuilder dataRequest = FijiDataRequest.builder(); dataRequest.addColumns(columnDef); final List<FijiCell<Object>> cells = ImmutableList.copyOf(Iterators.limit(mCells, pageSize)); final FijiResult<Object> result = MaterializedFijiResult.create( mResult.getEntityId(), dataRequest.build(), mLayout, ImmutableSortedMap.<FijiColumnName, List<FijiCell<Object>>>naturalOrder() .put(column, cells) .build()); return new FijiResultRowData(mLayout, result); }
/** {@inheritDoc} */ @Override @SuppressWarnings("unchecked") public <U extends T> FijiResult<U> narrowView(final FijiColumnName column) { final FijiDataRequest narrowRequest = narrowRequest(column, mDataRequest); if (narrowRequest.isEmpty()) { return new EmptyFijiResult<U>(mMaterializedResult.getEntityId(), narrowRequest); } boolean containsPagedColumns = false; boolean containsUnpagedColumns = false; for (Column columnRequest : narrowRequest.getColumns()) { if (columnRequest.isPagingEnabled()) { containsPagedColumns = true; } else { containsUnpagedColumns = true; } if (containsPagedColumns && containsUnpagedColumns) { return DefaultFijiResult.create( narrowRequest, mMaterializedResult.<U>narrowView(column), mPagedResult.<U>narrowView(column)); } } if (containsPagedColumns) { return mPagedResult.narrowView(column); } else { return mMaterializedResult.narrowView(column); } }