private RepositoryEquivalence processMigration(SubmittedMigration migration,Db db,boolean inverse){
  if (db.hasMigration(migration)) {
    ui.message("Skipping: already recorded %s -> %s",migration.fromRevision(),migration.toRevision());
    return null;
  }
  Task t=ui.pushTask("process_migration","Bookkeeping migrated revision %s",migration);
  RepositoryEquivalence equivalence=(inverse) ? determineEquivalence(migration.toRevision(),migration.fromRevision()) : determineEquivalence(migration.fromRevision(),migration.toRevision());
  if (equivalence != null) {
    db.noteEquivalence(equivalence);
    ui.message("SUCCESS: Equivalence found and recorded: %s",equivalence);
  }
  db.noteMigration(migration);
  db.write();
  ui.popTask(t,"");
  return equivalence;
}

private RepositoryEquivalence processMigration ( SubmittedMigration migration , Db db , boolean inverse ) { if ( db . hasMigration ( migration ) ) { ui . message ( "Skipping: already recorded %s -> %s" , migration . fromRevision ( ) , migration . toRevision ( ) ) ; return null ; } Task t = ui . pushTask ( "process_migration" , "Bookkeeping migrated revision %s" , migration ) ; RepositoryEquivalence equivalence = ( inverse ) ? determineEquivalence ( migration . toRevision ( ) , migration . fromRevision ( ) ) : determineEquivalence ( migration . fromRevision ( ) , migration . toRevision ( ) ) ; if ( equivalence != null ) { db . noteEquivalence ( equivalence ) ; ui . message ( "SUCCESS: Equivalence found and recorded: %s" , equivalence ) ; } db . noteMigration ( migration ) ; db . write ( ) ; ui . popTask ( t , "" ) ; return equivalence ; }
check a submitted migration for equivalence by translating the from - repo to the to - repo , or in the case of an inverse translation , translating the to - repo to the from - repo via the forward - translator . a representation of that equivalence is returned , if one is found , or null if no equivalence is found .
