252: def ChangeSet.statistics(journal_in)
253: stats = {"moves" => 0, "creates" => 0, "deletes" => 0, "deltas" => 0}
254:
255: YAML.each_document(journal_in) do |op|
256: case op
257: when DeleteOperation:
258: stats["deletes"] += 1
259: when CreateOperation:
260: stats["creates"] += 1
261: when MoveOperation:
262: stats["moves"] += 1
263: when DeltaOperation:
264: stats["deltas"] += 1
265: when DirectoryOperation:
266: stats["deleted directories"] = op.deleted_dirs
267: stats["created directories"] = op.created_dirs
268: else
269: UI.failure :input, "Unknown operation #{op.class}"
270: end
271: end
272:
273: return stats
274: end