private void ApplyMigration(IMigration migration, MigrationAttribute attr)
 {
     // we're adding this one
     logger.MigrateUp(Current, migration.Name);
     if(! DryRun)
     {
         migration.Up();
         provider.MigrationApplied(attr.Version);
         provider.Commit();
         migration.AfterUp();
     }
 }
 private void RemoveMigration(IMigration migration, MigrationAttribute attr)
 {
     // we're removing this one
     logger.MigrateDown(Current, migration.Name);
     if (! DryRun)
     {
         migration.Down();
         provider.MigrationUnApplied(attr.Version);
         provider.Commit();
         migration.AfterDown();
     }
 }