void CleanStaleContent ( string outputFolder, IEnumerable<AssetSource> inputFiles )
{
var dictinary = inputFiles.ToDictionary( file => file.Hash );
var outputFiles = Directory.EnumerateFiles( outputFolder );
int totalOutput = outputFiles.Count();
var staleFiles = outputFiles.Where( file => !dictinary.ContainsKey(Path.GetFileNameWithoutExtension(file)) );
int totalStale = staleFiles.Count();
foreach ( var name in staleFiles ) {
File.Delete( name );
}
Log.Message("{0} stale files from {1} are removed", totalStale, totalOutput );
}