@SuppressWarnings("unchecked")
@Override
public <T> void put(EntityId entityId, String family, String qualifier, long timestamp, T value)
throws IOException {
final FijiColumnName fijiColumn = new FijiColumnName(family, qualifier);
final HBaseColumnName hbaseColumn = mColumnNameTranslator.toHBaseColumnName(fijiColumn);
final CellSpec cellSpec = mTable.getLayout().getCellSpec(fijiColumn)
.setSchemaTable(mFiji.getSchemaTable());
final FijiCellEncoder encoder = DefaultFijiCellEncoderFactory.get().create(cellSpec);
final HFileKeyValue mrKey = new HFileKeyValue(
entityId.getHBaseRowKey(),
hbaseColumn.getFamily(),
hbaseColumn.getQualifier(),
timestamp,
encoder.encode(value));
write(mrKey);
}