public FileSystemRepository(DirectoryInfo folder, FileSystemShardingStrategy sharding, IBuildStuff builder)
 {
     _sharding = sharding;
     _directory = folder;
     _builder = builder;
     _fileCache = new Dictionary<string, FileInfo>();
 }
        internal void Update(IBuildStuff _builder, ICanBeSharded lastEvent, int index)
        {
            Index = index;
            Timestamp = DateTime.Now;

            if (lastEvent != null)
            {
                LastEventTimestamp = lastEvent.Timestamp;
                LastEventValue = lastEvent.Value;
            }
        }
 public AzureBlobFactory(IEnumerable<AzureBlobShardingStrategy> strategies, IBuildStuff builder)
 {
     _strategies = strategies;
     _builder = builder;
 }
 public FileSystemFactory(IEnumerable<FileSystemShardingStrategy> strategies, IBuildStuff builder)
 {
     _strategies = strategies.ToDictionary(d => GetId(d).ToString(), r=> r);
     _builder = builder;
 }