public void serialize(IColumn column, DataOutputStream dos) throws IOException { SuperColumn superColumn = (SuperColumn) column; dos.writeUTF(superColumn.name()); dos.writeBoolean(superColumn.isMarkedForDelete()); Collection<IColumn> columns = column.getSubColumns(); int size = columns.size(); dos.writeInt(size); /* * Add the total size of the columns. This is useful to skip over all the * columns in this super column if we are not interested in this super * column. */ dos.writeInt(superColumn.getSizeOfAllColumns()); // dos.writeInt(superColumn.size()); for (IColumn subColumn : columns) { Column.serializer().serialize(subColumn, dos); } }