/** {@inheritDoc} */
@Override
@SuppressWarnings("unchecked")
public <U extends T> HBaseMaterializedKijiResult<U> narrowView(final KijiColumnName column) {
final KijiDataRequest narrowRequest = DefaultKijiResult.narrowRequest(column, mDataRequest);
if (narrowRequest.equals(mDataRequest)) {
return (HBaseMaterializedKijiResult<U>) this;
}
final ImmutableSortedMap.Builder<KijiColumnName, List<KeyValue>> narrowedResults =
ImmutableSortedMap.naturalOrder();
for (Column columnRequest : narrowRequest.getColumns()) {
final KijiColumnName requestColumnName = columnRequest.getColumnName();
// We get here IF
// `column` is a family, and `mDataRequest` contains a column request for the entire family.