private IRepository CreateSerializableRepository(int id, string name, string source, PackageOperationType operationType, Func<IPackageRepository> packageRepositoryFactory)
{
Argument.IsNotNullOrEmpty(() => name);
Argument.IsNotNullOrEmpty(() => source);
Argument.IsNotNull(() => packageRepositoryFactory);
var repository = new Repository
{
Id = id,
Name = name,
Source = source,
OperationType = operationType
};
_idTupleDictionary[id] = new Tuple<IRepository, IPackageRepository>(repository, packageRepositoryFactory());
return repository;
}