@Override public FijiColumnName apply(final FijiCell<?> cell) { return cell.getColumn(); } });
/** * Prints the contents of a single fiji cell to the printstream. * * @param entityId The entity id. * @param cell The FijiCell. * @param printStream The stream to print to. */ private static void printCell(EntityId entityId, FijiCell<?> cell, PrintStream printStream) { printStream.printf("entity-id=%s [%d] %s:%s%n %s%n", formatEntityId(entityId), cell.getTimestamp(), cell.getColumn().getFamily(), cell.getColumn().getQualifier(), cell.getData()); }
/** {@inheritDoc} */ @Override public NavigableSet<String> getQualifiers(final String family) { final FijiColumnName column = FijiColumnName.create(family, null); validateColumnRequest(column); final NavigableSet<String> qualifiers = Sets.newTreeSet(); for (final FijiCell<?> cell : mResult.narrowView(column)) { qualifiers.add(cell.getColumn().getQualifier()); } return qualifiers; }
/** {@inheritDoc} */ @Override public <T> NavigableMap<String, NavigableMap<Long, T>> getValues(final String family) { final FijiColumnName column = FijiColumnName.create(family, null); validateColumnRequest(column); Preconditions.checkState(mLayout.getFamilyMap().get(family).isMapType(), "getValues(String family) is only enabled on map type column families." + " The column family [%s], is a group type column family." + " Please use the getValues(String family, String qualifier) method.", family); final NavigableMap<String, NavigableMap<Long, T>> qualifiers = Maps.newTreeMap(); for (final FijiCell<T> cell : mResult.<T>narrowView(column)) { NavigableMap<Long, T> columnValues = qualifiers.get(cell.getColumn().getQualifier()); if (columnValues == null) { columnValues = Maps.newTreeMap(TimestampComparator.INSTANCE); qualifiers.put(cell.getColumn().getQualifier(), columnValues); } columnValues.put(cell.getTimestamp(), cell.getData()); } return qualifiers; }
/** {@inheritDoc} */ @Override public <T> NavigableMap<String, NavigableMap<Long, FijiCell<T>>> getCells(final String family) { final FijiColumnName column = FijiColumnName.create(family, null); validateColumnRequest(column); Preconditions.checkState(mLayout.getFamilyMap().get(family).isMapType(), "getCells(String family) is only enabled on map type column families." + " The column family [%s], is a group type column family." + " Please use the getCells(String family, String qualifier) method.", family); final NavigableMap<String, NavigableMap<Long, FijiCell<T>>> qualifiers = Maps.newTreeMap(); for (final FijiCell<T> cell : mResult.<T>narrowView(column)) { NavigableMap<Long, FijiCell<T>> columnValues = qualifiers.get(cell.getColumn().getQualifier()); if (columnValues == null) { columnValues = Maps.newTreeMap(TimestampComparator.INSTANCE); qualifiers.put(cell.getColumn().getQualifier(), columnValues); } columnValues.put(cell.getTimestamp(), cell); } return qualifiers; }
/** * Returns a {@link com.google.common.collect.Multiset} of {@code FijiColumnName} to version * count for the columns in the provided {@code FijiResult}. * * <p> * The returned {@code Multiset}'s iteration order is the order of columns returned by this * {@code FijiResult}, and the count is the number of versions of the column. Note that this * will require fetching paged columns. * </p> * * <p> * If the provided {@code FijiResult} will only be used retrieving the columns of the row, * the {@link com.moz.fiji.schema.filter.StripValueRowFilter} can be used to avoid retrieving the * values of each {@code FijiCell}. * </p> * * @param result The {@code FijiResult} containing the columns to count. * @return A {@code Multiset} of {@code FijiColumnName} to version count. */ public static LinkedHashMultiset<FijiColumnName> countColumns(final FijiResult<?> result) { final LinkedHashMultiset<FijiColumnName> set = LinkedHashMultiset.create(); for (FijiCell<?> cell : result) { set.add(cell.getColumn()); } return set; }
/** {@inheritDoc} */ @Override public boolean hasNext() { while (mCells.hasNext() && mCells.peek().getColumn().getQualifier().equals(mLastQualifier)) { mCells.next(); } return mCells.hasNext(); } }
String previousQualifier = null; for (final FijiCell<T> cell : mResult.<T>narrowView(column)) { final String qualifier = cell.getColumn().getQualifier(); if (!qualifier.equals(previousQualifier)) { qualifiers.put(qualifier, cell); final FijiCell<T> cell = Helpers.getFirst(mResult.<T>narrowView(requestedColumn)); if (cell != null) { qualifiers.put(cell.getColumn().getQualifier(), cell);
final FijiResult<T> narrowView = mResult.narrowView(column); for (final FijiCell<T> cell : narrowView) { final String qualifier = cell.getColumn().getQualifier(); if (!qualifier.equals(previousQualifier)) { qualifiers.put(qualifier, cell.getData()); final FijiCell<T> cell = Helpers.getFirst(mResult.<T>narrowView(requestedColumn)); if (cell != null) { qualifiers.put(cell.getColumn().getQualifier(), cell.getData());
if ((null != mNextCell) && !Objects.equal(mNextCell.getColumn(), column)) {