Esempio n. 1
0
 public void CleanupItemsOlderThan()
 {
     using (var connection = Connection.OpenConnection())
     {
         Installer.CreateTable(connection);
         persister.DeleteAllRows(connection, null);
         persister.SaveStream(connection, null, "theMessageId1", "theName", new DateTime(2000, 1, 1, 1, 1, 1), GetStream()).GetAwaiter().GetResult();
         persister.SaveStream(connection, null, "theMessageId2", "theName", new DateTime(2002, 1, 1, 1, 1, 1), GetStream()).GetAwaiter().GetResult();
         persister.CleanupItemsOlderThan(connection, null, new DateTime(2001, 1, 1, 1, 1, 1));
         ObjectApprover.VerifyWithJson(persister.ReadAllMetadata(connection, null));
     }
 }
Esempio n. 2
0
 static Cleaner CreateCleaner(AttachmentSettings settings, StreamPersister streamPersister, IBuilder builder)
 {
     return(new Cleaner(async token =>
     {
         using (var connection = await settings.ConnectionFactory().ConfigureAwait(false))
         {
             streamPersister.CleanupItemsOlderThan(connection, null, DateTime.UtcNow);
         }
     },
                        criticalError: builder.Build <CriticalError>().Raise,
                        frequencyToRunCleanup: TimeSpan.FromHours(1),
                        timer: new AsyncTimer()));
 }