public void repair(IColumn column) { Collection<IColumn> columns = column.getSubColumns(); for (IColumn subColumn : columns) { IColumn columnInternal = columns_.get(subColumn.name()); if (columnInternal == null) columns_.put(subColumn.name(), subColumn); else columnInternal.repair(subColumn); } }
public void addColumn(String name, IColumn column) { if (column instanceof SuperColumn) throw new UnsupportedOperationException("A super column cannot hold other super columns."); IColumn oldColumn = columns_.get(name); if (oldColumn == null) { columns_.put(name, column); size_.addAndGet(column.size()); } else { if (oldColumn.timestamp() <= column.timestamp()) { columns_.put(name, column); int delta = (-1) * oldColumn.size(); /* subtract the size of the oldColumn */ size_.addAndGet(delta); /* add the size of the new column */ size_.addAndGet(column.size()); } } }