private Pair<Descriptor, StatsMetadata> close(FinishType type, long repairedAt)
{
switch (type)
{
case EARLY: case CLOSE: case NORMAL:
iwriter.close();
dataFile.close();
if (type == FinishType.CLOSE)
iwriter.bf.close();
}
Map<MetadataType, MetadataComponent> metadataComponents ;
metadataComponents = sstableMetadataCollector
.finalizeMetadata(partitioner.getClass().getCanonicalName(),
metadata.getBloomFilterFpChance(),repairedAt);
Descriptor descriptor = this.descriptor;
if (type.isFinal)
{
dataFile.writeFullChecksum(descriptor);
writeMetadata(descriptor, metadataComponents);
SSTable.appendTOC(descriptor, components);
descriptor = rename(descriptor, components);
}
return Pair.create(descriptor, (StatsMetadata) metadataComponents.get(MetadataType.STATS));
}